vv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzyvv7K a {{z{z|z||}|||}||{||{|{z||{||||}}|{|{{|{{|{|||||{{{z|{{{{{||{{}{||{{{{|{{{|{||{||{{{{{{{|||{||||{{{z{{{zz|{{{||||{zzz{{|{{{|z{||z{|zz{{z{{|{{|{{|{{{|{zz|{|{||{{{{|{{zz{{{|{z{||||{|{{{{z{|{|{|{|{{{zz{z||{{{|{{z{{||{{{{{{|||}{|{z|zzz|||{{{|~||{{{{{{|}{{|{||||{z{{{{{{|||{}}||{|z|z{{{|{{|{||{{{{{|{{|{|{{||{||{||zz}|{|{|||}{|{z|{{{||||||||{{{{||{||}|}}}}||{{|{z{{|}|}}}|||{||}|||{|}||{{}|||{|z|||||}}|||}{|{{||{{}}}}}||||}||{z{}}|}|}|}}{|{|||{|{||||||}|{|{|{}{{|||}{}|{{{||||{|}|||}|{|z{{|{{|||{||||{{|{{{|{||||{~||||{{{{{{||||}|||||{{{{{||{}|}|}||{{{{z{{|{{||}}|||z{|{{{}z|{{}}||{z||{{z|}||{|{|||zz|||{z|{||{||{{{{{z{{{||}z||{{{|z|{{{{||{{{{|zz{z{{zz{|||{||{|zz{z{z{{||||{|{{{z{z{{{{{{{||||{z{{{z{{{{{|{|||{{{{{z{z{{|z{}|{{z{{{{yz{||||||||{{z|z{{{{|{{{|{{z{{{{|{{{|{||||{{{{{{{{|{|{||}|{||z|{z{|||}|{{|}|{{|z{{|{||||||||{{{{{{|||{||{|{{|{{{|}}|{}||||||{{{||{}|{}{|||{{{{{|{{|||||}}}}|z{{{|{||||}||}{{{{{{|}||||}|~~|{|{|||{|}|}|||||{|{{|{{||||}|||||{{|||{|}|}}}||||}|}{|{|}}|}}|}|||z|{{{{}|||{||||}|{{|{|{}{|||{|{||{{{{{|{z{|}{{{{|||}{}}||}}||||||{{z{||||}|}||{{{{z{{{|}{}}||}{{{|{|z|||}|{}|{|z{{{{{}|||{}{{{z{{|{{{{{{|z}|}}{|{{z|{{{}{||||}{{y{|{{{{{{||||zz{|{z{{{||}{z{{{{zzzzz{}|{{{|{{|{{{z{{{{|||{{|{{{{z{z{z{{|z{|{{{{{{z{z{{||{{}|||{|z{{{{||{|{|||{|{|zy{{z|}{{}{{{{{{|{{{|{{{||||{|{|{{{z|||{|||}|z||{z|{{|||||||{{{{{{{{{|}||{{{|}{||{{{|||{{|||{|{|{{|}|||||}}|{{{{{{{|}{||||}||{{|{{{{{|||}||}{z||{||{||||||}|{{{{|{|}}|}{{}|}{||{{||{|~||~}|||||{{||}|~|}|}||}|{||{|}||||||}}||||}|{|{|||{}}~|{|{|{{|{|{}|||||{{|{zz|||{}{{|{}{|{|z|{||||||||}{{{{|{|||{||}}|{{{|{||||}|{||||{|z{|{z|{||{|}||{|{{{{{z|||}{|||{{{{z{{{{|{{|{|}}{}{|z{{{{|{{|||{{|{{z{{{{||{{|{{||{{{{{{{{{{{{|{{{z{z{z|{zz{{||{{{zz{zzz|{||{||{{{|zz{{{|z{{|||{zz{zz{{{|{{{{{{|{{z{zz{{|{{{}||z|{|{|{{{|{||{||{{{{{{|z{}{||{|||{|{{{|||{{{||}}{{{{{|{|}|}{|||{{{|z{z|{{{{||{{|{{{|{|z{||}|||}{{{{{|z|{|{|||}|{|{|{|{||{||||{}|{{|{|{|||{}}||}||{z|{{{|||||}|}}}{{{{|{||}||{}}}|{|{{|||||||}||||{|{|}}{||}|}}}||{|{|||z||||||}||{{|{z|}||||~||}{|z|||||}||||||}|{{|{{{{|{{|}|}}{|{{{{{{{||}|{{||||{{{{{{|z}{}|}}||{{||{|}|||}}||||||{|{||||||}|{{{{{z{z{|{{{||}||{{|{{|||}}|{~}|{|{{{{{|z{}|{z||{{{z{|z|{{{|{}{{{{{|y{{{||||||{|{{{{z{{{z{|{||{{z{z{z{{{{{|{{|{{{{{{{zz{{{{||{{|||{{{{z{|{||{||{{{zzz|{{|{y{{{{{{{{zz{z{|{{||{|zz{{{{{{|}||{|||{{{|{{|{{|}}{|||||z{{{{{|||{{||}{{|zz{{{}z||{|}}}{|{|{z{|{{{|}|{{|{|{y{|||}|{|~||{||{{{|||||{}|{{||{{|{{{}{|||}|{z{||||{|{|}|||{}|{{|{{|}|}{|}|||{|}{{z{|{|{|}}|{{|||||||}||}}|}|{||||{{{||}}|}}}||{||{{||||}}||{{{{|{{|{||}||}|||||}|||~|{|||}||}{{|{||||}|{{|}}|{{{{z|{|{|||}||||{|{{z|{|||}~}}}}||{|{|}|}}|}{|||z{{{|||{{}}}}|z||{{{{{||{}|}}|{|{|{{{{{|}{{||z{{zz|{z{{||{{||zz|z{{{{{{{{{{|{{{{|{zz{|{|{z|{{|z{{zz|{|{z{||{||{{{{zz{{{{|{{||{{z|z{{z{|{{{||{{{{z{{{z{||z{|{|z{{zz{{zz|{{z|{{z{zz{{{{z|{{{}{{{z{|{{{{|{{{||||{zz{{|{|z{||||}||{|{{{z|{|||{|||{{z{{z{z{{|{|||}|{{{|{{{|{{{|}|||{{z{{{z|}|||||{|z{|{{{|{}{z|{|||{||{{{|||{|}}||z{{|{||{|||||{||{{{{|{{{|}|{}|}{}{{||{{{|||{{}||||||{{{||}||}||~|{||||||}{||}}}||||{|z{{}}}|}|||}{|{}{z{|||||}}{}z{|}|{{||{}}|||{{{zz{{{||}|||}|||{z{{zz{||||{{{{{z{{{{{{|{||}}}|}{{{||{|}}||||}|{|{{{||}|||}}}|}{{z{|{||}|}|||}|z{||{|||{||z||{|{{{{{z{{{|}{|||{{{|{|{{{||||}}{|{|{z{{z|||{{|}|{{{z{{{{|{{|{{{|{y{{{{zz{||{{|||zz{zz{z{{{{{||}|zz{{z{{{{||}|}||{{{{z|{{{||{|{|||{z{{{z{{{{{|{{|{{{|{|{{{|{|{||||{{z|y{|||{|{||}{{{|{||{||}{||}|{{{{|{{{{||{|||{{}{z{{{{{{||{|||{{|{z{{{|||{{|||||{|{{{||||{{||||{|{|{{|{|}}|}||{{|}{|||||||}||}|{{{||{{{||}|{}|}{|{||{|||}|||}}|||{|{|||||{|}}}}{{||{|||}}|}}}}|{||||{{|}|{|}}|}{|||{||||||||}}|{||{||||||}}||}||{||{{{{}{|{}||{||{z{|||||||{||{{|z{z|||||{{}~}||}{{{|}|||||}||}{|||{{{}{||||}|}{{{z{|{||||||||||{|{|{|{{|}{{|{|{|z{z|{|{{}||}|{|{{{{{{||{z||}{{{z|{z{{{{{{|{{{||{{{||{{z{{{{{{zz{z{{zz|||}|}||z{{{{{|{|z{{||||{{{{{{{{|{{{{|||{zz{{y{z{|{{||{|zz{{z{{{z|||{{|{{{|z{{z{|||||{}|{{{{zz{z||||||||{{||{z{|{}||{{||{{{{{z{||{||{|{{|{{{||{{{|||}}|{z{|{z{|z|{|{|{{||{{{{{{|{||{||||{||{{||{~|||||||||{{|{|{||{}{|}|||{{{{{{|{||{|}||||{{|{||}|{|||||||{||}|||||||}}|{|{}|}{|||}|||}||{||{||||}}|}}||{|{{||||{|{}|||{|{{}|{|}|||||||{||{{{{{{{||{{}}||{|||zz{|{}|||{{||{{{|z{{|{{~{||||||||z||}||}}||{{{{||{|}||{|{}||{|{||{|||||{||}zz{{{|{{{||z{}||{{z|||{}||}{|{|{|{{{z{{|{{||||}|{{|z|{|{||||}{||z{z{{{|||z{|{z|{{{y|z{|{{{{|{{{z{zzzzzz{{|{{||{{||{zzz{{{}||{|z{|{zzz{{|{{{{|{|z{z|{{{z{|{|{|{{zz{{{|zz{{{{{||||{{z|{{{{{|{|||{z{{z|{|{||||{||{{|||{{{{}~||{{|{z{{z{{{{z{}|||||{{|z{{{z|}|||{}||{{{{|{{|||{|||{|z|||{|||}|}||||{{{||||{|||||}|}{{{{|{{{|}|}||||{z|{|||||}||||||{{||{|}{}|}||||}||||||||{||}{}|||{|{{||||}||{||}{|{{{|||{}||||}}|{{{{z{|}|}||}}~{|{{}{{{|||}|||}||z{{||{{}{||{||{{|z|z{{|}{z|}}|||z{||{z}}|||||~||z{{{{|||{|}}}}|{{z{{{{||}|}}|}{{z{{z{z{|||z||||||{z{|z||||||{|{{{z{z{{z}{|{}{{{{{z{{{{{|||{}|{{{{{{{|{z{{{{{{{z{{{{zz{{{{{{{}{|{{{zzzz{{{{|||z{{|yzzzz{{{|{|||{{{{}{|{{{{{{|{{{{{yz{{{z|{|{{{{zz{{|{{{|{{|{}}||{{{{|{{{|{z{{|{{{{{{{{z{{{||||{{z{zz{{z{|||{}|||{|{{{{|{|{|{|{}{{{{|{{{{}|||{}{||{{{{|{||{{|||{|z{{|{|{||}||}||{||{{{{||}||||}}}z||{{{{{}|{||||z{{{|{{{|||||||}|||{{}|||||}||}|~{|{{||||}}}{||}||{|{|||}|}||}||}z|{{|{{||||{|}|||{{|||||{}|||}}||{{|{{{||||||{||{|{|{|{||||||||{z|zy{{{|||{{||{}||||||{||}}||}}|{{{{{||||}|}|}|||{{{||{{}z|||||{|{|{{{{{{||{|}{}||zz{|z{{{||}{{{{|{z{{{||{{|{||{{{{{z{|{{{{|{||zzz{{{{z|z||{|{|{z{{z{zz{|{|{|}{{|{z{y{{{|{{{{|{{{{{{z{{{||{|||{z{{||z{z{{{{{{|{|{{z{{{z{|{|{{||{{{{{{z{{}{{{|}||{|{{zzz{||||{||{{{{z{z{{{||{|{|{{|{zz|y||||{{||{{z{|{{{||||{{|||z|{{{|{{{|||||||{{{|{z||||||}{|{{{|{{{{|z}|||}|{}z{{|{|}|||}||}||{|{{|z{||{}|}||{{|{|||}}}|}|}}|||||{|||||||}}}|{||}|{}{}|}|}}}}{}|{{{|}}}{}{|~}|z{{{{{||||}}|}|||||{{{}{}}||}|{{|{{|{{|||||||}|{{{|{{{|||||}}|{{{z{z||{|}|{|}|{}{||{}{|}{|}|}|{|{{|{||{|~|}|}|||{z{{|{}||}}|}}{||{{z{{||{||}|}|{|{z{|{||}|{||||{{{{{{||}||||||{|{{|{{{{{|{||{{{z{{z{|z|{{}{|||{{{z|z{z||{}{}||{z{{{|{{{||||{{{{{{|{{{{{|z{|||{|z{{{{{{{{||{{{|||z{{{z{{|{{{||}z{|}}|{z||{{{|}{{{z{|{||{}{|}||||{{|{{}|{||{{|||{{|{|{{{||||||}|{{|{||}{{}{|}{|||z|{{{{||||}|||}{z||{{|{|||{||||}{{{{{|{|}|||}}}{{|{||{|{|{~||}}||||{{{{{|}|}}}|{{{|{{{{}|}||}}|{{||}||||{||}||~|||{|{|{{}||{|}|}{{}{|{{}||||}|}}{||{|{|}|}||}|}||{}||{|}||~||}}|{{||||||}}|||}}||||{{{z{|}||{||{{|{|{|||}||{{{}{|{||||{||}||}}||||{{|z|||}}||}}|{|{{}|{||{}|}||}{|{{{{{{|||||||||{{{{{z{|{||||{{z{|{{z{||}|{||{{{|z{{{{{{|{|||}z{z{z{{{{|||{|||{{z{{{{{{{|{z||{z|z{{{{{{{{{|{||{{z{z{zz|{||z|{|{|{|{z{{{{|||{||{{|{{zz{z{{||||}z{{{{{{z{{{{{|}{{z{{{z{{|}{|{}{|z|{{{z{|z{{|{{||z{|{{z|z{||{{|{|{{z{|y{{{|{}}}{|{{{{{{{{|}{||{}||{{|{||{{|}{|}||{|{||{||{||}|||||{||{{z|}}||{|}}{|{|{{z{{}|{|}||||{{|||{||}|||||}}{|{|{||||}|}||~{|}|||{||}|}|}|}|||{{|{}|}|||}|||{|}{|||{{{}|}{}|{|||{|}||{}||}||zz}z{{{|||||}|z|{{{{{{||}|||||{|{z|{{{{{||{}|}|{}{|}{{||}}||{}||{{{{|{|||}~{{|z|{{|}{{}||||}|}|{|||{{{}|||{|z||{{{{{{{{||||{|{|{|{zz{{{|{|}|}|{z{{{zz{|||{{|{|{{{z{{z{z{||{||{{{{{z{zz{{{{{{{{{{z{z{y{{||}|{{{{{{{zz{zz|||{{}|{{z{z{zz{|||z{{|{|{z{y{{z{{|{{||{{{{{{{{|{|{{{||{z{z{z{|{||{||{}{|{z{z{|{{{||{{}{{zzz{{z{{|{||}{z{{zzz{z||{|{|{{{|{zz|{||||||||{{{{|{{{||||||{|{|{{{{{{{{||||||{||{{{||{||{}||||{{||{{{|{|}||}||}|{|{{z||}|}|}|{{{{{{{{|||||||}}||{{{|{|{}|}||}||{{||||{{||||}||}{{{|z||||||||}}||{{|||{}}|||||}{|{{{|{{{|||}}|||{z{{{z{|||||{|||{|zzzz{||||||}}|{{z{}|{||}{}}}|}||{||{{|||}||}||{{{{{|z||{|||}}{z{|z|{{|{|||}}}|{|{{{{{|{{|}|}||z||{{|{{}|||{|{|{{z|{{{{|{|{{}{{{{{{|zz|||{{{{|{{{zzzz{{{|{|||{{{{{{|zy{{||{||{z|{|zzz{{|{|{{|{{{zz{{zz{{{{|||||{z{{{{{z|{{y{|||{{{|{zz{|{{||||{{{{|{{{|}|{{||||{{{{{{{{{}|z|||{{|{z{|{{||{{|}||{|z{z|zz|{{{|{|z{|{{{{{{||{|||}{{||{{{|||||{}|{||{{{{{||{||||}|{{{{||{|{{||{{|}{{{||z{{|||||||{||z{{{{{||||}||}z{{|||{|{{|}|}|{}|{|{||{}}}||}}|}||{{|{||}|}{}||}|{{|{{||||||||}|{|{{{|||||{|{}}|||{{{{||||{|||{|{{{{{|z|||||||{{{{{z{{{|{|{{}}||}||}{{||||}||}|}{{||{{{}}||}|}|{{{{{z|{||||||||{{||||{{||}{{||{|{{{z{|z{|}{||}|{{z|zz{{{{|{{{{||z|{zzz{}}|{{{|{{{|{{{{z{{||}|{{{{{z{z{z{{{{{{{{zz{{z{z{{{|{{{||{|z{zzz{||{|{|{|{{{z{{{z|{{{{{|z{{zz{{{{{|{{{{{{z{{{{zzz{|||||||{{|{{{{{{|}|||}||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{|||}{{|{{{|{zz{{||||{||{|{{z{z{||{{|}{||{{{{{{{||{||||{{{{{||{{||{{{{||{|{{{{{{{|{|||}|{{|{z{{|||||{}||{{|z{{|{|{|{{|||{{|||z{{|{|}|}{|{{|{{{|{|{{{{||||{|{|z{|||||{||||{{{{z{{||||||||{|{|{{|{||{|{||||||{||{{||}}}|}|||{|{{|{|||{|}}|{{||{{|||||||||}||{|||||{}}}}{|}|z}||z|{}}||}}}}|z||||{|{||||}}}|||||{{{|}|}|}|}|||{|||{{|{|||}||{||{{{{||{{|z|}|||zzz|{{||||}}}}}|{|}}|}}}|}}}~}||{{{|||}{}~|}}{||||||}}|||}|}~|{|||{|{{}||{||||{{{|||{|{||{|{||{{{{{{y||{{||{{|{|{{{{z|||||||{{{{{{{{{{{{}{||{z{{{{|{{{||||{|||{{{zzzz{{{||||{{{|{{{{{{{{{|{||{z{{{|z{{||{{{{{{{{{{{{{{|||{|{{{{{z{{{{{{}|{||||{{{{{{|{}|{|{||{{{z{z|||{|||{{|{|{{z{{z{||||{||{{{{{{|{{||||||||{|{{{}{||||||||{{{||{z|||}{|||}|||||{{||||}|}||{|{{|||{||{|||~||{{|z|{{||||||}|||{{{{|z|}|{{||{{{{|{||||}||}|}|||||{|}|{}|}}|}|}{z|||{{|}||||||}{||}{{||}{|||}}{{{|||{{|||}||}|{}}{|{|{{}||{}|}||{{|{{{|{|}||{||||z|z}{{}|{|~}}||||}||}}}~}||}~}|{||z{||{|}}}}}||||{{|z}{||{||}{||||{|{{|}{||||{|||{z{|{||||||}|{{{{{{z|||{{||||{{{{{|z|{|{{{{{z|{z{|{{|{|{|{{||{{|{{{z{{{|{{|{{{{zz|{{{{{z{z{{z{{|zz{zz||{{|}|{z{{zz{{{{|{|{|}{{{zz{{{{|{{z{|||{|zz{{{||{||||{{{|{|{{|{|{{{}{||z{{z{{z{{||}{|{{z{{z|{{|{|{{||||z{||{{{{|{}{|}||z{{z{{{|{|{|||{|z{|{{|{||||{}{}|{z|||{{||||{{|}||{{{{{||{{||||}||z||{|{|||||}}|||z||{{|||}|}}}|{{{}{{}{||||~||||||{{}||}}||||}}}{|||{{{|{|||||||{z||{{{||||}}||}|||{{|{|||}|}}|{{{{{{{|||||{||}||{zz{z|{}{||{|{{|{{{{{{||{}|}}}}||}|}|}}}}|}~}|||{{|z|{|}|{|{}|}|{{||z{|{||||}|}{|{{{{{|{||z{}{{{{{{z||{|z|||||{{{z{{{{{|z{{|||z{|z{{{{||{{z||{|{{z{{z{{z{z{|{|z{z{{zzz{{{{}{||{{z{z{zz{||{{|{z{zz{{{{{||{|{}|{z{{z{z{zz{{{z{{|{|{z{z{z{{z|{{{{{{{zz{z{z{{|||||{{z{|{yz|{{{||}{{{z{{{{{|{{{{{{|{|}{{|{|{||||||{|{{||z|{{||||||{{{{z|zz{{|||{{|{||{{{z|{||{{{||}||{{{{zz{|{||{}||{{{{|{||||{{}|}{{||{z{{||{|{{|||{{{{{|{|||||{|||||{{{||||}|||||}|||{|{|{}}||}}}||||{|{|{}||{||{|{}{||{||{|||||||{|{{||{||{|||}|||{z{{{{||||||}|{|{z{{{{{|||{|||z{{{{z{{|{|{|~~}}||||||}}}}}||}}|}|{||{}{{}|}}}}|||||{{||}||}}}||{{{|{||{||{{||||}z|{{{|{{|{||}{||z|z|yz||{{|}{{{{{|{zz{||{{|{{||{{z{{{{|{|{{||z{{z{{{z|||{{{|||{{z{{zz{{|{{|||{{{{z{|{{{{|{||{|{{z{|{z|{{{{{|||{{{{{{{{{{{|||||{|{z|{{{{{{|{||||{{{{{{{||{|||||{|{{z|z{{||{{{|{{{{{{{||{{|{|}|{{{|{z|z{||||}||{|{{zz{{||{|{|||{{{{{{{{||}|{}||||||z{||{{||||{}|{|{|||{|}{|||||{{{|{{{z|}|{||}||{|{|||{||}|}||}{{}||}||{|||}}||}{{||||||}}||}|}|||||z{|}||}|||}}{|}|{|{|{||}||||{|{{{|}||||||||||{{z{|{{||{||}||||{|{|{||||{{{|{||{|{{{{z|{|}}}}|}}|}{}}|||}}}|||||{{{|}||||~}|{|{{||{||||}||||{{{||{{{|||}{|}|{{z|{|z{||||}||{{{|{{{{{||{|{||||{{z{{{{{|{{|{{{|{|{{z{{{|{|{||{{{|{{zz{|{||||{{{zzz{zzz{{{{{|{{z{|{zzz|||}|||}{{|{z{{z|{|{|||{|{{{y{zz|{z{{{|{zz{{z{{z{||||{|{|{z|{{z|{|{||{|{{{||{z|||{|{{|}{{{{{{{z{||||}{|}||}{{z{|||{{|}||{z||z{{}{|{|||}||{{||{{|{||{{{||||{{{|{{|{{}|||||||{z|||||}|}||||z|||{{{|{{}{||||{{{{||{{|||~}}||{|{z{|||{||||}}||{{|||||~||||}}|}|{{{{{|||}|}||{{{|{|{|}||||{|}||||||{|{|||}}|{}|{{{{|{{}|}|||}}{|{{||{{|}||||}{|{{|}||{{{||}|}}~~||}|}}}~|}}}}}|||||||||}||}}}|{{{{|{{{|}}|}|}}{{{|||{|||||||||||{{{{{{|{{||||{{|{{{{z{|{{|{|{{{{{{{z{{{|{{{|||{z{{zz|{z{{|{|{{z||z{zz{||{{||{{{|{{{{{{{{||{{{z{z{yzz{|{||{||{{{z|{z{z{{z{||||z|{{z{zz{|{|{}||{z||{{zz{||{{||{|{{{y|{{{{{||}|||{{{{{{||{{||}|||{{|z{{{|{|{{|}||{||{{{{z|{{|}}||{{|z{|{||{{|}||{{{{{|zz{|{{|{|{|||||{{{|}{||{}||{|{z{{{|{|||||}{|{|{{}{||}|||||||{|{{|z|}}|}}}|{{z||{|{}|{}|}||||||{||||}|~}}|||||||||{|||}}|}}}{{||{{{{}|||||}}|{y|||||}|}|}||{|{{|{{z}}|||||||{||{{{{|{||||||||{z{||{{||{}~~}}}}}~}|}}}}||}~~|||}{}|}~|}|}}}}~|{|}{{|{|{{~}||||{{|{{{}|}|||}{{{{z{||}|||||{||{{|{|{{{|{}{|}{||{{{|{z{{|||}{{|{{{{{{{|{{|||{|{z{zz{{{{{||{||{z{{{{{{{||}|||||{|{{z{{{||{|z|||{{|{{z{z{{|z{||{{{{{{{z{|{{|{|||{{z{{{{{{|z|{|}|{|z{{{{{||}|{|}}{|{|{z{{||{|{}}}{{{{|{{{|{|||||}{{{{|z|||}|||{|||{|{|{||{|}{|}}{|{{||{|||}||||{|||{{z{z||{||}}}}{|||{{{|}||||}}|||{||{{{~}|||}}|||{{{{|{||}|||||{|||}||||{|||}|}|{||}|{{|~}|||}}|{}||{{|||}|||}}|{||{{|||||||}~}||{||||}||}}}}}|||{|{||||||||}|{|{{{{|{|||||{}|{|||||{{{{}||~~~|~}|||}|}}~}}}|}||{~||}|{}|}|}}}|{|z}|{{}||}{|||||{|{z|{||||z|}|{{{{z{{z||||||{|{{{{{{|{|{|{{|{|{{z{{{zz{|{{|||}|{|z{{{z{{{z}|{}z{z{zy{{|{|z{{{{{z{{zz{{{{{{|{{{{z{{{{{{{|z{||||z{{{{zzz{{z{{|||{z{{zz{{{{|{{|||{{|{{{{z|{|||||||z{{{{{{{||||{|{{z{z{{|z{{||{|||{{{{|{|{|{{{z|}|||}|{{{{{{|||||{z|{{|z{{{}|{||||||{{|z{||||z{||{||{{z||z||{||}|||{{{|{{{|||{{||}|{{z|{{z{|{||{|{}{{{{|{||{{|{||}{{{z{|||||||||||~|||||{|{}|}|||{|||{{{||}||||}|}|z|||{||||{|||}|||{{|{z{|||}|}{|{{|{{{|z{}||{{}}|{{|{||z||{||{}||{{{{{zz{{||{}~}~~}|~}}~~}}}}~|}|{||||}||||}|||{{||{{{}|{||||}|{{z{{{{{||}{|{|||{{||{z{}|{||||{{||{{{{{|{{{|{{|z{{z{{{{{{z{||}{{zz{{{{{|{|{{|{{|{z{z{{{z|||{{z{{{z{zz{{{{{{|{{{{{{{{{z{{{{{{|{{z{{{z{{|{zzzz{{|z{{{{z{z{|{|||{{{{z||{z{{{{{|{|{{{{{{{{{||{{|{|{|{{{{|{}|{|{||{{||z{z{{|||{}|||{{||{z|z{{{|{}|||{{z{{{{{{|{||}{|{z|{z{{{{{|{}|{{{{{{{|{|||||}|{{|{{{z{{||||||}{{|{{{{|z|}|}|}}||z||{{{|||||}||||{|||}|||||}||{}|}{|{||||}||}|}}|||||{{{||||||{|{z{{|{{|||||||}|}|{||{{|{}{}||}}{{{||{||{{|}|{||||{zz|{|{||}{{|}|{{z{|zzz|{{{~}~~~|~}||}}~~}}}}~}|}{|||{{{}||}|||||{{||{}||{|||||z{{{{||{||{{{||||{{{z{{|{|||{{|{{}|{{{z{{{{{|{||{|zz{z{{{|{|{{{{zz{zzz{|z{|{||}{zy{{{{z|{{{z{{|{{y{{{|{{{|{{{||{{{{z{{zz{z{{|}{|{z{{{{z{||{z||||{{z|{{{z|{|{{}{{zzz||zz|{{{{{||{{{{{zz{||{||}|||{|{zzz{{{}|{|}{{{z{{z|||{{{{|||{{{{{z{{{||||||||z{{{{{{|||}{|||{{{{{{{{{|{|{|{}{|z{{{|{{{||}|||{{{{{{||||||||||{||{z{|z|{||||{||{|{{{|}||||}|}|||{|||||}}|}{{}||{|{||||||||}|}}}|||{|{{||}|||||{{{|{{|||}|{{|||{|||||{|{|}||}||{{|z{{{|{||||||||{||{{{{||{|{{||{{{{zz{|{{|{|~~}|}~}}}||}}}}|}}||||}|{}}}||||}}}{|||||||{||~{{|{{{|{{{{{{|||{|||{|{{{{{}||||}{|{{z|||{{{|{{|{|||{{{{|z{{{|{|{{|{z{{{{{{|z|{{||{{z{z{{{{{{{|{||{{{{{{{{{{{||||||{z{{{z|{{{{||||{{zz{|{{z{{}{{|}{{|{zz|z{{{{|||||{z||{zz{||z{||}||{{zz|{||{|||||||{{{z{{{||}|}{{|{{|{{|{z||||{|||{{{{{{{z{||}|}|{{z{{z|z{{||{|{}{{{||{|{{{|||||}|||{|||{{{}{{|||}{{{{{{{{|{||||}}||{||{{{|}}||{|||{{||{{{}|}|||||{|{|||}{{}{}|}|}{|{{{{{{|}||{}}z}{|||{{|}||||}}|}||{{{}|||}||}}}|{|||{{|||||}}{}|{|{|{{z{{|||{}||{|{{{|||{|||||{|{{{{{{{|||{{~~|~}~}|~~~}||}|||}{||||}||}|}}||||||{|||||}|}|}||{{{{|}|||}||||z|z{|{{||}z||||{{{{z{{{{||{{||||{|{{{{|{{|{{{|{||{{{|{{{{{{{|||{zzz{z{{{{||||{|{y{{z{{{{{|{|{|{{||z{{{{||z{{|{||{{{{{{z{|{{{{{{{{{{{y{{{{{{{|{|{{z{{{|{z{|{{||||z|{{{{{{{||z||||{{{{z{{{{|{||{|{z{||{{z||||||{|{z{|{{{{{||||||}|{||{{|{||||||{{{{{|{{{{{|||z|||{|{{{||z|||||}||{{{{{||{|}{|}|||}{}}|z{y||}}|||||{||{z|{|}}{}|}}{{|||}|{z||}}~}}}|{{|{|{{}|}||}|{|{{||||{{}||}}}}|{|{{|||||}}||}||{{{{{|{~|~|||}||||{{{{||||{{}|||z{||{{||}||||||||{|{{{{||||~~~~}}}|}~~}~~}}~|||||{{|}||||}}|||z{||{|||}{}|||||z|{{{||||{||}|{{z{{|{||||{||||{{|{||{{|||{|||{{|{{zz{z{{{{{{{{{{{{{z{{|{|{{|{{{{{{z{z{{{{|{}{{{{{{{z{{{||{{|{{{{|zzzz{{{{|}{{{{{{y{{z{{z{|{{{{{{z{{{{{{|{{|{{{zz{{z|z|{||{|||{{{{{z|{|{{}|{}{|{|{{{|{|{{{{|{|{{|zz||}||{||{}}{{|zzz{|{|||}}||||{|z{{|{|||||||{{z{|{|{|{{||{||{{{|{{|||||||||{z|{{||||||{}|}||{{||{{{z|||{|||||z|||{||||||||}}{||{z||{|||||||}|z}{{||{{}|}}{}|}||||||{|}|}|||||{{{|{|||}||||}}||{||{{{{}||}||{||{z{{{|||||}||||{{{{{{{{|{{{{|||{{{{z{{{{|||~~}~~}|}~~}}|~}|}}}|}||||}|}|~}}|{||{|{{|||||}||{{{{{{z||}|||||}||{{|{{{||{||{}z{{z{||{{{||{}|||{{z{zz{||||{||{|z{{z{||{{|{|||{{{{{z{{z{||{{||||{z{z{z{{{{{{{}{|{z{zz{z|{{{{||||{zz{{{{{{{{{{|||{{{z{z{z{||z|{{|z{z{{{{{|{|||}|{|{{|{{z||}|||||zz}zz{{{z|||||||{{||y{{{{||}|||}{{{||z{z{||{||||{{|z{{|{|||{{||||{{{{{{{||||{||||{{z{z{{|}||||||{{||{|{||{|{{}||{|{||{{{||}||{|}|{||{|||{}|||~|}|||{|||||||||||}|{{}|||{|||||||}|||{{||{||}||||||{|{||{||||}|}||||z{||{|{{{|}|}}}||{{|{||{{|||}||{{{{z{{|{|{{||||||{{{|z{||}|}~~~}}}}}~~~}|}|}|{|}|{}}}|}}}}||}|z|~}~||{|}}||||||{|{}{{|{}{}||{{|{{{||||{}||{{{{z{|{|||{{||{{{{{{z{{{{|||{{{{{|{{zz{zz{{|||}{{zzz{{{{|{{{|{{{zzzz{z|{{{{{{||{{|{z{zz{|||{||}{{z|{z{{{|{z{{||z{{{{z{z{{|{{|||{{{z{{z{{|{|{||||{{{{{{{{}~|||{|{z{|{{|{{{{{{|{}{{{{{{{{{||||{}}{{{{{{{{{||{}}{{{{{{{|||{{}}{||{{{{|{zz||||{{|||{|{|{{|{{||}|||}{{|{{{{{{||||}||||{|||{{||}|{|}}|{{{{|{z{}|{|}}|||}|{{|{|||{|{}~|{{|||{{|}}~||}||{||{{{|{|}||}}||||{{|{}||||||~|{}{|||||}|{|}||}{{{{{{{{|||||||}{|{||{|||z|}||}{{|{|{{|z{|{{|~~~|~~~}}}}~~~~}{||||{|}}}}~||}|||{}|||{||}}}||{||{{{|{{|||{|||{{{|{{{{{}{|{||zz{{{{{{{|{{||{||{z{{{z||{{{{|||{zzz{|{{{{{{|{~{{{z{{{{{|{|{|{||{{{zz{{{z||{{{||z{{|{{{|{|{|{{{||{{{{{{{{|{{{{{{{zz{{z{{{|{{{|{{{z{{||{{||||{|}|{{{{{z{|||{{|{|||{{z{|{z{|z{{{|{|{{{{{zz|||{|{||{||{{z|z{}|||||{{{|{|z{{{{{|{|{|{z|{|{z{{{|{|{|{|{{{{z{||{|{|}||{|{{{z{{|||{|}||{{|{|{{z{||||||||{{z|{{{|}||||}|{|{||{|||||||}}}|{{{{|{{{}}||{|{}{{|{|||{||||}||{{|{{||{{|}||}}}|{{{}{||}||||}||{|{{|{|{|{|{|||||{|{{{{z|}|}|||||||z{z{z|||||~~~~|~~~~~}~~}|{{}|}}}}}}}||{|||||{|{||{|||{{{{|{|{{||}||||{|{z|||{|||{}|{}{zz{{{{{{{|{{|{||{{{z{{{||{{{{{{{|{{{{{z{z{{{|{|zz{z|{{{{|{{||||{{{z{{{{{{{{{{|{zzz{z{{{|{|{{|||{{{{{zz||{{{{z|{|{|z{z{z|{|{|{{{{{|{{{zzz{z|{{|{||z{|z{{{{{{{|||{z{{z{{{|{{{{||}{{{{{z{{|||{||}}}{{{{z{||}{|||{|{|{{|{{{||||}||||{{|{{z{||{|||{}|{{|{{{||||}{}||||{|{{|{||{|}||}}{||{{{{|}||||}||{|{|||{|||}|||}|{|{{|||||||}}||||{{||{||||}||}|||||{{{||||}||{||{{|{|||{|||}|}}||z{||{|}}|}}}||{|{z||{{{||{}{}|{{z{{|{{}}|{{{}|||||{{|z{|||{~~}~~~~~~}~~}~||}{}|}|}}}}|}}}|{|||{||{||}}|{||{{{{{|||{|||||{{{{|{z~}||}||}{{{{{{||{{{}|{}|{{|{{z{{{||{{|{|{{|||{zz{{||{|{{zz{{z{z{{{{{{|||{{{z{z{{{{|{|{||{{z|{{{{|{{|{|}|{{{{z{z{{{{|{||||{{{zz{z||{{||{|{{{z{{{z|{{|zz{{{|{{|{z{||||{|{|{z{{{{{{|{{{||||{{{{{z{z|{|{||}|{{{||{{{{|||{|||{{{{{{{{{{}{||}{|{|{{{|{|}|{{|{||||{{|||||}||}}|{|{{||||}{||||||{{{|{{{{}|||||{||{||{|{{}}||||}}|{{||||{|{|}||{~}|{}|||||}}}}}|||z{{{{|{{||}||}|}||{{{{|{{|}}|}~||{}||{|}||||||}|||{z{||}||}{|z||{{{{{|z|}|||{}||{||z|{z{|}||~~~~~~~~~}~~}|}||||}}}}|}}|}~|{|{{{||||{}}}}|{{|||{{{|||||{}}{|{{{|{{}|||{||{{{|z{{z{||||{{{{||{{||z|{{|{{|||{|{{|{{{{{{{{|{{{{{{{{{z{|{|z{||{{z{z{{{{|||{{||{z{|z|{{{|||{||||{||zz{yz{{z{{{||{{z{{|{z{{{{|||{{{{{{{{{{||||{{|zz{{{||||{||}|||{|{{z{|z{|}|||||||{|z|{|||||z|{{{|{{{|{|z||}||||z{|z{z{{|||{||}||{{{{{{||{||||}|{{{|{{{{|}}{{||{|{||z|{||{||||}|||{|{|{|||{{|||}||||{|||}|{||{|||{{{|{||}|{|}}}||{||||}{}|||{}}}{||z{}|||}}}|||}{{||||}|}||||||}{|{||{|}{||||||{||{{|z||}{{{}||{{{|{{{{}}|}|}{}||{{|y{{{||{|~~~~}~~}}}|}||}z|{{~}}~}|}{|{{{|{{||{|||}{{|{{{{|{||}||||||{z{{{zz{}||{|||{{zz{z{z{|{{{|||{{{{{{{{{|{{|{{{{z{{z{zz{{{z{{|{zzzzzzz{{{|{{{|{zz{|{{z{{{{y||{|{{z{z{zzzz{|{{{{{z{{{z{z{{|{|{{{zzzz{{{zz{|z{||{{{{z{{{{z{{{||{{{{{||{{y{{|{|||{{{{z{{{z{||{{{{|{{{zyz{{{|{{{|||{z|{|{z{{{||{|{{{{{{{{{|{|{{{|}||z{{|z{{{{|{{{|{|{z{{{||{|||||{|z{{|{{{z{||{||}|{{{|{{{z|}}||}|||{{{{{{z|{|}||||{|{{{|||||{||{|||{{|{{{{|}|||||}|{|||{{{|||}||||||{{{|{{|||{}||||{{z||{|}||}{|{|{{{z|{{{|{||||||}{{|{{zy|||||{|{z{{z|z{z{}|{|~~~~~|}~~}}}}}~|||{||||}}~}}}}||{||{{{}{|||}}}|||||{{{{||||{||{|||{|{{{||{||{|z|z{{{{{{{z|{{|{|z|{{{z{||{{||{{{{{{{{{{{{{{|z|{z{zz{zz{{{|{{||{{z{{{|{z{{{{{|z|{{{zz{{z{{{|{{||zz{z{z{zz|{z{|||{{{z{{{z{{{z|||||{{{z|{{|{|{{{|}{{{zzz{z{{|{{|{{{zz|{{{z{{{|||{|z|{{{{{{|||{|{{|{{|{{z{{{{||{{{|{z|{{{|{z|{||||{|{z{{{{{{||{{||z{z|{||{||z}|}||}||{{{{{{{|}{{}|{||||{{{{|||||}|||||{{|{{|||{}}|}||{|{{||||{|}}|{||||{z|||||}||}||{||{{|||{||}||}|z|{{{||||{||||}||{||{{|}||{{|}|{||{{{{{{|||||}|||{|{{z{{||{{{|{|{{{|{{{{{|{|~~~}~~}~~~~}|}|}}{}|}}}|}|}||||||{|||{|}}}|z||{|||{{||{|}|{{|{{{{z{{{z{{|}{{{{zzz{z|{{{z{||{{{|{{{|{{z{|{{|{{zz{zz{{{{|{|{{{z{{{{y{||{|{{zz{{{{{z{|{{||{||z{{{zz{{z||z|{{{{{{{zzzz{{{{zz{{{{{zzz{{{|{{|||||z{{{{{z{|{{z|||{{z{{{|{z{{{{{|||{{{{z{{{|{|{|||z{{{{{{|{{{{|{|{{z{{zz|||||||}||{{{{{||{{||{||||{{||{{|{}{{|{|{||{{||{{|{||}|||{{|{{|{{{||||{||}{{{{|zzz||}|}}|||z{{z}{{|}|||}||{{{{{{||{{}|||||}{|{{||||}||}}||}||{||||{}}}||}||{{||{{{|{||||||{{}{|{{{}||||||}{{zz{||{{{{}|{||{{{|{||z{{|||||{{|{{{z|{|{{{{~}~~~~~}}||}}|}}}~}|}||{{||||{||{||}||||||{|{||{|||{|||{|{{{{|{|{{|{|{|{{|{{{|z{|{z{{|{{|{zz{z{zz{{{{{{{|{zz{{{{{z{|||{{{|{z{{z{{{{|{|{{zzz{zz{{|{z{{{|{|{zz{z|{|z||||{{{z{z{z{{|z{{{{{{z|z{zz{{{{|||||{z{zz{{z{|||{||z{{{{|z{{{||{{{||{{|{zz{{{|{||}{{{{|z{{y{{{|||}|}{{||{{{{{}||{|{{{{|{{{{{||||{{|{|{{|{{|{{|}{{||||{|{{|{||{||||||||||{|{|}|{|{||}{|{{||{||}{{{|||{{{{{{{||{}|}|~||{|{{{||{}|}{}|||{{{{{|||||||||}|{|{|{{||||||}||{|{{|{{{{|||{{}||}{{{|{{}||||{||||{{{|{{|||{{||||{{|{{{{{||}|||{{|{{{{|{{|||{~}~~~~~|}}}|||}}}}}}}|||{|||}{|||{{}}||{{{{|{{||||{{{{|{}zz|{{{|{|{|||{{{{|{{z||}{||{{{|{{z{z{{{{{{|{{{z{{{{{{|{{|||z{{z{{{{{{||{{|||z|{zzz{{||{{{|{||{{z{z{zy|{{|||||{{zz{{{{{|{{|{|{{{{{{z{{{|z{{{}{zz|{|{z{||||{{}|||{{{{z{||||{|}|{{{{{{{{|{||{|||{{|{zz{{{{{||}|||{{{|z{|||{{|}{||||{{{{{{|{}|}||{{{z{|y{{|}{|}|||{{{{|{{}||}||||{{{{{{{||||}|{|||{{|{{{{|||}|||||||{{||}|}||{||}||||{}||{|{||}{|}}||||{{|}}}|||||{|||{|{|}|{|z|||{{|||{}|}|}}}|}|||||{{||}|{}||}{|||{z{{{}{|||}||}|{{|{{||||{|}{{{||{{|{{|||{}~~~~||}{{}}|~|}}}}}}{|{||{{|}||{}||}{|{{|{{{{|||{~|||z{||{{{|}|||{|{{{{{zz{{{{z{}{|z{{z{{{z{{{{{|{|{{{zz{z{{|{}|}{}{{z{zz{|{|{|||||{{{z{{{{||}{||{||{{{z{{zz|{{|||{{{{{{y{{{|z{{||{{|z{zz{z{|{}{||{{{|{z{{{}||{{|||{|{{{{{{}|{||||||{|{z{{{|z||{|||{{{{z{z{|{|||{|{{{||{z{z|||{||}|{{{z{{{{|||{{||{|{|{|{{{{|||||||{{|{|{{{{||{|{}}||{{|{|{|||||||||{|{|z{{|||}}}}||{{||{{|||||{|}|{{{}{||{{}||}|}{}{|{|{{{|}|}|}||{}|||{|{{|{|}|||{z{||z{|{|||}||}||||{|{{{{||{|}}{{||}|{|{{}||{}|}|{}|{{||||||||{|{|{{z{{{|{{}~~}~}}}}|}}}|}|}|}}}{{{|{||}}|||{||||{{{{|z||||||{{{{{z|||{{||{{|||z{zzz{zz}{{|{}||||{{z{{z{{|{{||{|{{z{{{{{{{|{|{}z{z{{{{{{|||z}|{z{{{z{{{{|{{|||{{{||{{z{{|{{|||{{{{{z{{{|||{{|{|{zzz{|{{{|{z|}||{{{{{{{z{{|{{{{|{{z{{z|{{{|}|||{|{{{{{|z{{{|||||{{{{{z{{|||{{}|||z|{|{{{|||||}||{{{|{{{{|{||{{||{{{{|{{||}|{||{|{{||||{|||||}|}}{||{|||{|}z|{{}||{|{{{|{{}}|||}|||{|{|{{||||}||}||z{|||||||{{|}||{{{{|{{{}|}{}}}|{||}|{{||}|||}||{{{|z|{{||}|}}}|}||{zzz}|||||||{{{{{{{||||||}}||{{|z{|{|||||z|}|||{{z{|{|||z~~~~~~~~~}~~}}}|}||~||}~{}}|||{||{|||||}|}}||{|{{z{|{|||{|||{{|z{{||{|}||||z|{{{{z{{||{{||{||{z{|{z|z{z{|z{|{{{{{{{{zz|{{{|z{{z{z{z{|{{|y|{{zzz{{zz{{{{{||{{{{zz{z{{|{}{{|||z{{{zzz||{z{{{{}z{z{zz{{{z{{{{{zz{{z{{z{}{{||}||{{|zy{z{||{{|{{{{{{{z|{{{{|||||{{{{z{z{{||||{{||{{z{{|{||{|||{|{{{z{||{|||||{||{{z{z{{|{|{{||||{z|||z|{|{||}{{|{{{|{{|{||}|{}|}|{{{{z{|{||}{}|}|{{{||{{|}{|}~||{{||{{||||{|{}}}}{|{||{{|||||}|{|{||{|{|{|}{|{|}|{{|{{}{|||||}|}|||{|{{||||||||||{|{||||{||||}|||{z{z{|z||}||{}{{z{{{{z{}{||{~~~~}}}}}|}}}|}}}~}}||||{{{|||||}|||{|{||{||||||||{{|{z{{{{{|{{{|{||{|z{{{zz||{||||{{|{{z|z{{||{|{{|{z{{z{|||{|{{|{{z{{|z{|{|{{{|||{{|z|{{{z{{{|||{{z{z{{{{{|{{{{||{z{z|{{{{|{{{||{{{{{{z{{{|{|||z|{{{{{{{z||{{{}|{{|||{z{{{||{|{{{{{||{{|{}|}|||{|{|{{{{{z{{|{|}{|{|||{{|{|||{{}{|||{|{{|{||{|}||{|z{{{{z{|||{||||{{{{|{|{||{|{|||{|{z{{}z{|||||}}|{{}{|z{|~|}||}||{{{|{{z}|{|}||}}|{|{|}{|{{||}}}}{z|{|{{{~}|||}}}|}|{||{}|||}}}||||{{|{|||}|||~}||||}||||||||}}|{{{{{|{{|||}{|{||{{|z|{{|||}|}{||{{||{{{|}|||~~~}}~||}}|}}|}~}}|{{{||{||}{}|||||{|||{{{{|{|{|}|||{{{zzz|{||||{|{z|{{|{{{{z|{|{|||{{{{{{|{||{|{{{{{{{zzzy{{|{{|{zz{{z{{z|{{{|{{|{{{{{{z{{|{|||z||z{z{|z|{|{||{{|{{z{zz{{z|{z{|{|{|z{z{z{{{z{||{{{{{|||{z{{||{|}|{z{z{zz{{{}{{||||{{{zz{{{||{{|{|{{||{z{|{|{{||||{{||{z{{{{|{}||{|{||{{zz{{|{|{||{{z{z{{z|{}{|||{|{{||z{{{||}||||{|{{|{|{|||||}|||{{||{zz||||}|}}|{|{||{{{}{||||||{{z{|||}}|{}}|||{{|{{|{|}|||}|||{{{|{}||{|}||}{|z{|{|{|||||}||}|||||{{{||||||||{zz{{|{{|}|||}||{{|{{{{||{|{||}{|z{{{{{{{||||~~~~~~}}~}||||{}}}}}|}{|||{{{|||||}|}z|{|{|{{{||{|{{{{|{{z{z{{|{|{{{{|{{{{{{{zz{{z{|{{{{{z{z{z|{{{zz||{zz{z{{z{{{{{{{{zz{{zzyz{{{{|{|{{zz{{{{z{{z{||z{{{{z{{{z{z||{z|{|z{{{z{{{{{{{{||{{zzzz{{{{z{{|z||z{{{|z{{{|{z{|{|{{{{{z{|{|||{|||{|{z{{z{z{|{{||{{{{{{{{{|||{|{{|z|{{z{{{|||{|||{{{{{{z{{|||||{{|{z{{{{||||{{|{{|{z{{{{||{||{||||||{|{|{z||||}|||{|{{{z{}|{|||}||z{||{|{|}||{|}|||||{{{|z}{|}|}}}|{{{{{|}}{||{}||{||{{|||{||{||||{{||{|||{|||{|}|{{{||{{|||||||||{|z{{{{|||{||||||{{{{|{{||||}|||{{zz{zzz{|||~~~}}}}}{}}}}}|~}}}}{{|{|{||||{{{|}{|||{{|||~{}{{{|{{|{{{{z|{{{|||||{{|{{|{{{{{|{|z{{|z{zz{{{|{{{|z{{{{{z{|{{{}{{{{|{{{zzz{{|{{|{|{z{z{{zz{{||{|||{{{{{zz{z{{|z{{{}zzz{{z{{{{{{|{{|{y{zz{{zz|z{{{{{{{|{{{{{{}||{|||{z{z{{|{{{|||{||{{{zz{|||z{||{|{{{{{{z{{|||{}||{{z{{{{{{||{|{|{{{|{{z{{{|||{||{|{z{{{|{|{||{{|{|{{{z|{|{{|}|||||{{zz|{{z{||}|}{}{{|{{|{{|{}|||~||{||}{{||}|||~|}|}||{||}|}||}||||||{||{||||{||}}|{{||{{|||}||||||{|||{|{||{|}}}}|{{{|{{|||||||{|{{{{{{{{{|{||||}}|z||||{{||||||||{|{{|{{||}|{~|}}}|~|}}}}|}}||}}}{}{|{||||||}}|z|{{|{z|||}{z|||{{{|{{|||||||{}{|{{{{z{{{{{||||||{{|z{{{{||{|||z{z{z{z{||{{{{||{{{{{z{{{|{||||{{z{|{{z|{|{{{||{{{{zz{z{{|{{||||{{{z{z{z{|{{{z{|{z{zzzz{{{{{{|{|{{{{z{{z||{{|{||{zzz{|z{|{}|{}||{{{|zz|{{{{|{||||{{{|z{{||||}||}{z|}{z{{|{}||||||{{{{||{{}|{}||||||{{{{z|||{||||{{{{z|{||}{}}}}|{|z{|{||{||}|||}|{{||{{{||||}|}{{{|{|{{||}||||}}||{{||}||}{||}|}|||~||{|}|{}||}}|{{|{{{{}||}{|}{||{{{{|{||||||}|{|{{||{|{}|||||||||{|{|{||||{||||{{{{{|{{|{}{|}||{|{{{{||{|}|}~~}}|}|||{}}}}}}}}}||{|{|{{}|}}||||{|{||{{|}||{}|}|{|zz{|z|{{|{{||{||{{{{z{{z|z||z{{|{z{{{{{{|{{{{{{{y{{z{{{{{||||z{z{{z{z{{z{{{{{{zzz{zz{{||{|{||{{{zy{{zz{{|{||{{zz{{{{z{z{{{|||{z{{{{{zz|{{z|{{z{{{||zzz{{|{||||z{z|{{{||{||}{}z{{z{z{z{{||{|||{||z{{|{{|z|{{{|{{{{|{|{z{{{{||{{z{{|zz{|||||{}|{|{|{{z{{||{{|||z|{{{|{{||{|}}||{|{{{{|||}{|}}|||{||{{|{}}}||||{}{{z{|{{|}{|||}||{{||{|{{||{|{|}}|||{||||}}|||~|}{{||{|{{||||}||{{{{|{{{{}|{|{}}||{||{z||||||||{{|{{{{{||}|{||||||{{z{{|||||{{||{{{z{{|||{|{|~~~|~~}~}}||}}~||}}}||||||||}|||||}|{||{{|{{{||||}}}||{|z{{{{|z{{||{||{z{{{{||{{|||{{{{z{{{|{|{{|||{{{zz{zz{{z||{{|z{{z{{{zz{|{|||{z{{zzz{|{|{{|{|{z{{{zz{z{||{|||}{{z{{z{{z{{{||||{{|{{{{{{z{{{}{||zz{{zz{{{|{{{|||{{z{zz{{{|{||{}|{{{{z{z||||||{{{{{{zz|{|||||{||||{{|{{{{|{{}||||{|{{|{{|{{|{|}|{{{{{{z{|||{|||{{{|{{{|z{{||||}}{{{{|z{{|}{||||}|{||{z{{||{|}|}||z{{{||{|||||||}|{|{|||{|||}|||||{{{{|{{||~||||}|{|||{{{}||{|}}|{{|{|||}||{||}}||{{{|{{|{|}}}}{||||{{|{{||{|}}}|{{|{{{}z{}|||||||z{|{{{|{{|}|~}~}|~||}}}~}}~~||}}||{{|||||}}||{}|||{{|}|}{{}}|{{|{{|{{{||||||{|{{{|{z{{{{{|||{z|{{{z{{||||{|{{|{{z{{{{{{|{|{|zz{{{z{z{{||{{{{z{{{z{zz{{|{|||||{{{y{{z{{|{{{|{|z{z{{{{{{z{|{||{|zyzz{{{|{z{|{||{{{{zzz{||{{|||{{|{|||{}||{{z||{{{|{{|{||{}{}||{{{{{|{{|{|{|}|{|{{{|{|{{}}{|||||z|{{{{{|{||{||{{{|||{{{{||{||{{{{|{{{{|{||||||}{{|{{||{|}|~{|}}|{{{{zz{{|{}}|}}{{{||{|{||{|}||}||}{{||||{|{|||}||z|{}|{|}|}}}}}|{||{{{||{|}|||}{|{{{{{||}|}}}|}|||||||{{||}||}||||{{|||||||||}~|{||{|{{z}||}||}|{|{{{{{{||||~~~~~}~~|~}}~}}|{~||}{{{|{|||||}}}|||{{{{{|||{|||||||{z|{{z{||||{|{|zz{z{|{z{||{{{|{|{{{{|z{z{|{{||z{{{zz{{||{{||{{{{{{z{{{{{{|{{|{{{zzzz{z{{{{{||{{{{{{zzzzz{{{{||{|{zzzz|{z||||{||{{z{{{{{||{{{|{||{{z{{z{{{|{{|||{{{z{{{{{|{|{|||zz{{{|{|{{|{{|{{{{||{|{{|{{|{||{{z{z{|{|||z||||{|{{{{{{|||}{{||{{{{{zz{{|{{||}||{{|{{|z{||||||||{{{{{||{{||}{|||{|{{{|{z{||}|||}|{{{|{{{|||||}}|{{|{|}{|||||||}}|{||{||{|}|}||||}}|{{|{||{}||||||{{||{{{{||}||}||{{{{|{{}}{||||}{|{z{{{{z|||{|{|{|zz{z||||||{{||{{{{{{{{|{|{{~~~~}}~}{~|~}~}}|}|}|}||}|{}}{|||}|{{|{|{|{||{||{|||{|{zzzz|{|}||||{{{z{{|{{|{{{{||{|{{z{z{z{{{{{|{{{{{zz{z{{||{{||zz{zz|{z{{{z||{{|{{z{{z{{{|{{|||{{{{{{{z{{{{{{||{z||z{zz{|{{{{||zzz{z{z{{{||{{|{zzz{{|{z{||{{{|||{{{|z{|z|{{{|||z{{{{z{{{|{|||||{{{{z{{{{||{{||||{|z{z{|{||{{{{|zz|{zz{{|}}|||||{|z||{{z||{|{{||||{|||{{|||}||||{|{{{{{|z{{|{|}||{z|{z{{|}||}}|||{{||{|||||{{|}|{{{|{||{{{{|||}|}{||||{{|}}}|}|{}z||{|{||||}||{{}{{{|{|{|||||||}|{|||{{{|{{|{||{||{{{{|{||{||}}||{{{|{|{||{||}{||{{z{{|{||{||}~}}}}~}}~~}}}}}}}|{||}||||||||||{{||{{{|{||}||||||{{|zz{{||||||}|{{|{{{{{{{z{||{{{{{{{|{{|{{{||{{zzz{z{z{{{}{||{z{zz{{{{|||z{{|||{yz{|{z{|{||{||{z{{zzz{{|{{|{||{{{{{{{{z{|{{{||{{{|{{z{{|{{||{|{|{|z{{z|||{{{||{{{{{{{{||{{|||}}||z|{{{|z||}}}|{||{{{{{{}{|}|}{|{{{{z|{{{||}||{{{|{{z{{||{}{{|}|{{{|{|z||{|||||}{|z{{{|{{|||||}{{{{{{{{|||}|||||}{|{|{{}~|}}|}|}{{{|zz|||{|||||||||{|{|{|}||||}}{{{||||}}|}}{}}||||{{{{}|||||{|}{{|}{{{|}|||}}}}|{{|{||}||}}||}|}{{||y|{|||}|}||{z{{{{{{}||||||||{{z{{{{}{||~~|}~~}|~|~|}|}}|||||{||~|{}}|{}{{|{{|{{{|||{|}{|{}z|{{z{{|||}z}{{{{{|{}{{{{|||{|{{{z{{{{|||||||{z|z{{{|{zz|{{|{{z{|{z{z|{|||{|||{{{{{|zz|{{}{||{{|z{z|{{|}|{||{{{{z{{{z{{|{|||{|||z{z{z{|z{||{{z{{||{{z{||{{|||{|{{|{||{|{|||{|{{{{|{{{|{{||||{{|{{{{{{|{{{||}|{{{{{{{z||||{|||{||{{{{z{{||{|}|{|{{{{|{||{|||||{}||}{{{{|||||}|{|{{|||z|||}{}}}||{||{{{{|||||}|||{{|{|{||}|}||}|{}{|{{||||}}}||{{|||{|{|}|}}}}|}{|{{{|}}||}||}||{{{{{||{|||}||}}{||||{}|}|||||}||{{|{{|||||||}||{{z{|{z|||||{||{{|{|{|z{|||{~}~}}}}|}}}|}~|~|||||||||||{|}}}|{|{z{|||{||||}{{|{|{{|{||{|z{||{{|{z{{{zz{{{||{{{{|zz{z{{{{}|{{{{{{zzz{{{{{||{{{z{{{{z{{{{{{{}{{{{{{{{{{{||{{||z|{{zzzzz{||{||{{zzz{{zz{{{{{{{|{{|{z{zz{|z|{|z|{{{{|{{{||{{|{||z{{{{{{{{|}|{{{{{{{{{{|{{{|||{|||{{z{{{z|{{{|{|}|{{{|{z{{||{||{{{z{{{|z{{|}|{|}{|{|{{{{|{{{{|||||{|{||{{{{||}|{}{|{{{{||||{|||||{{{{|{{z|||{||}{|{z||{{||||}||}|{|||{|{||}|}||||||{{{|{{|||{||~}|{|||{{|}|||||||{{{z{||{}||}|||~{|z|{|||||||{|||{{{z{|{{{}|}|{~~{{{{{{{z{}||||}{z{{{z{{{{|||{~~~~}}~~|||}|}|}~~}}{|{{{{{|}|}{|}|{{{{{|z{||||{||}{{{|{z{{{{{|{||{|{|{{{zz{||{|{{|{{{z{{zz{{z{{{||{z{{z|{z{{{{||{{zz{{{z{z|{{{z||zz{zyzz{{{{|{{{|z{{zzzzzz{||{z||{{zzz{zzzz{{{{||{{zzz{|zz{{z{{||{zz{{{zz{|{{|{}}|{z{z{{{{|||{{|{{z{|{z{|{{{{|{|{|z{{yz{{{{{{{{|}{{{{{z{z{{|||z||||{{{|{{{{{{{{}|||{{|{z{{||{||{{||{{z{{zz|{|{||||{|{{{{z{||||{|}~{|{{{zz{{{|}|||{|z{{{{{{||{||}||{{z{{{|{||||}||}{{|{{|{{{{|{||}||{{|{{{{|{|{}||||z{z{{z|||}||||||||||||||||{{|{~{|{{{z{|{}||||}}|{{y{{zz{}|}{{||{{{{z{{z{{|||~~}~}{|~}}|}~}}|}||}||}||||}{|||z{{{|||||}||||}|{{{{{|z|||{|}{}{{{z{|{||{{||||{{{{|z{zz{{{{{|{|{{{{{{z{{{{{z|||zz{{zzz{||{|||{|{z{{{{{{{{{z{|{{{{{{{{z{||{{||||{{{{{{{{{{z{{{|{|{{{z{{{{{|||{|}z{{{{|z{{|{|{|}z|{{{|z{{{|}{{|||{z{{{z|{|||{||||{z{{zz{{}}|{||{|{{{z{z{{z|||||}|{{{{|{{||||||||||{|{{{|{z|{{z}|||{|{{{{{{|||||||{}|}{z|{||||{}}}|||{{{{{{||||{|||z{{{{||||||{}}|||z{{|{{|}}||||}}|{z|||{|}|}|{}||||{|{||}|}|}||||{|||{{|{|}||}}}{||{|{{|||{}}||||{|{{z{|{}|||||||{|{{{{z{||||||{||{{|{{{|{{}{}~}}|~~}~}~}~}}||{|||||||{||}}||{{{z|z{|{}|{||||}||{|{{||||||||||{{{yzz|{|{{|{|{{|{{z{zz|{||{{{|{{{{{z|{{||{{|{{z{zzzzz{{|{{{|{{{{{z{z{{{{|{{||z{{{z{{{||{{|{{|z|{{{z{z{|{|z{|||{z{{z{{{|{|{|||{{{|{{{{||{||{}{|{{{{{{{{|{{||||{|{{{zz{|||||{||{|{zz{|{|{{|||||{||{|z|{|{}|{|{||z{{{{{{{|||||||z{||{{{{|||{{||{z{{{{||{{{}||}}|{||{|{{{||{}}}|}|z|z{z{||{}}||}||z{|{z|{}|{{{}||||{{|{||{||||||||||||{{{|~||||}}|{{|{|{|{}}||||}|{|{|{{{||||}||}||||||{|||}}|}|}|{{z|{{{||{|||}||||{{|||{||{{|}|{{|{{{zz||}||}|}}}||{}|}~|}~}{|{{|{z||||}||||||{{||{{{}{{|{}|||z{|z{||{||}|{{{{z{z{z|||{{{|||z{z{zzz{{||{}{{z{{zz|z{z{z{{{{{{{{{{zzz{{|||{|{{{zz{{z|{{|{|{{|{{|{zz{{z{{z|||}z{z|{{z{z{zz{{||{{zzzz{{{{{|{||{z{{zz{z{{|{|{{}{{{{zz{{zz||{{{||{{z|{{{z||{||||{z{{z{z{{{{{{|}{|{z{{z{{zz{{||{||z{||{{{{{{|{{}}|||{{{{{{{||{z{|{|{|{{{|{||}}||||{{|{{|||{||||{}}|z|{{{{{|{{}|{}{|y{{|||{||||}|}|{{|{||||{{|||||}|||||{{||||}|||||{{{|{||}|}}|}|}{{{{z|||||||}|||||z{|{{|{|}|||||{|{z{zz|||||||||||{{{{{z|||||||{{{|{{{{z|{||{~}~}~}}~}|}}~~~~}||{{}||||}||}}|}{{|{{|{|||~}|||||{zz||{{{{||}|||{|{{||z{|{{||{|{z||z{|z|||{||{{{{|{{{{{{{{|{{{{|z|{{{{{{{}{|{|{|z{|||{{{|{{||{|{z{{{|z{{|||{{||{{z{|{{{{|{||{{||{{y{{{{|{{{{|{{|{{|{|{z{|{{||}|{{{{|{|{|||||}|{{z{{z{{|{{||||{}{{{|z{z{|{{z|}{|{|{{|{{|{|{|||}||{||||{{|}}{}|||{{||{{{|{|{{||||{|||{{{{||}|||||||||||{|||z}|||}{{||z}z{||}}||}{|{{z|{{{||||||}||{{|z{||{|{{|}}||||}{|{||}|}||}|}{||{|{|}{{}|}{{||{|{{{||{|||||||||{||||||||}|}||{{{{{{{||||}}}|||{{z{||||||}{}||{{{z{|{||||}~~~~~}}}||}}||}}~}}}{{|||||{|||}}}||{{z{z|{{}{|||{|{{{z{{z|{}|}|{}||{{||{{z{{||||z{{|{{{z{{{|{{{{|{z{{z{{z{{{|{{||z{|{{zzz{{{|{{|{{z{{{{z{{z{{{||{{||{{z{z{{{{{{||{zzz|{zzz|z|z{||{{{zzz{{z|{{||{{z{{{{{yz{{|{||{z|{|{z{{{{{|{|||{|z|{{{z|{{|{|||}{{{|{{{{{{|{{|||{|{{{{{{||||||{||{||{{{z{{}{|{|{{z{|{|{{{|||{|||{{{{{{{{{|||||||{{|{{z|{|||||{||{{{|{{{|{||~}||}|{|{{{{{{|}{|}||{{{||}{|{|||{}||{{{|||{||{}||}||}|{}{{{{||}||}|}{{{z|{|{{|||{|}|}{{{|{z|||||{||||{{z{{|z{|{||||}|{|{{{|{|{{{{}||{||{{z{||||||~~}}}|}~}}}}}}}}|{}|{|||{{||}||||}{{|{{z{{{||||{|{{|{{{{{z|||{||{{{{{{{|{z{|{||}|{{{{z{zz{{|{{{{z{z{{{z{z{{{{|z{|{z{z{{zz{{{{|{{|{z{z{y{zz{{{z{{{|{z|{z{{z{{{|z{{{{z{|z{{z{z{|{{|{{z{{z{{{{{z{{|{{{z{z{{z{{|{||{||{{zz{{|{||{{|{|{{{|{{z}{|{{{||||{{|{{z|{{|{|{|||{{{{{{{zz|{|{{||||{z{{z{|||||||{|{{{{{z{{|||{|{{{z{|{{|{|{||}|||{{{|{{{{|{{||{||{{|{|z{{{||}|||||z{{|{{{|||{||}||{{{{{{|{{{|||}||{{{|{|z|}||}{||||{{||||||~}}|}||z{{{|{||||||||||z{{{||}|{|||}}|||z{|{|{z|{|||{||}||{{{{{|{{||{|{{{{{z{{{|}||~~~~~}}}|}~}}|}}}~|{z||||}||||||}||||{{{|||{}{||||{{{{{||{}|||||||{{|{|||z{|{{{||{{{{z{zzz{{|{{|||{{{{z{y{|{{{|||{{{z{{{{{{{|{{|||z{z{{{{{{{z{{|||||{z{{{z{zz{{{{{z{zz{{{zz{{z{{||{{{z{z{zz|{{{|{|{z{{zzz{{|{{{||||{{{|zz|{|||||||{{z{{{{||{{{||||z||{{{{{||}{{}||{{{{{{{||||||}|||{{|{z{{{|{|{}||{{|{|{{{|||{|||||{{{|{|{||||||||{|{||{|{{}{|{||||{z||{{z{}||}}|}|{||{{|||||||}}|{||||||{|||{{||}||z|||{{{|||||~}|||||{{{|}|}||}||{{||{{}{|{|||}}||{{||{|}||}|}|||||z{{||||{|||}|||{{|{{|{|||{|}}{||{{{{{||{{|~~~}}~~|}|}~~|}~|~|}||||}|}||}|||}|{{|{|{{|{}}{{|||||z{{{y||{||}|}{z{{z{zz{|{{|{|||{{{zyz{{{|{{|{{{{z{z{{{{{{{{{{|{zz{{z|{z{{{{|{z|{{{z{{{|{|{{}|{|{{{z|{z|{{|{{||{{{|{z|zz{|||||||{{z{{z{z{|{z|||{z|z{{{z||{|{{|}z{z{{z{{||{z|}{||{{z{y{{{|{|{{|||{z{|{z{{}{||{{|{z{{{{z{||{||}{{|{|{{{{{|{|{||||{z{|{{{z{{|{|{{|{{{||{|{||||}||}|{{|z||{||||||||{{{{z|{|{{|}||}||{z{|{{{|||{|}|{{||{z||{||{|}}}||{|{||{|||||}}}||{||{{{{||~|||{|{{|{|{{|||}}}|}}||{||z|{}{|||}}||{|{{{{{|{||||||{|{{{{z{{|||||}|{zz|{z{||{}||~~~}}||}||~}}}}}|~|||{{|{{|}|{|{|||{{{{{z{z|||{{}{|{{{{{{{|{{||||}{{{z{{{z{{|{|||{|{zz{zz|{{{{z|{{|{{{zzz{{{{|{|{|z|z{{{zz{{|{{|{{{z{{zzz{{||{|{{{|z|{z{{|{||{{||{z{z{{{{z{||{|{|{{{{z{zzz{{{|{{{||z{{{{{z||{|{{{{{{{{{zz{{{{{|||||{{{{{{{|{{|||{{|{|{z{{{||||{|||{{{{{{{|z{{{{||||{z|{{{{{||||{{||{|{{{{{|}|{|{|{{z{{{||{|{||}|||{|||{{|{|}{{}{|}{{|||{{{{|||~|||{{{{||{|}|}}}{||{{||{|{{||{{||}|||{|{}{|{}|}|||}|z|{{{||{|{}{}||{z{{{|{|{|{|||}||z{{|z{{|{|{|}||||z|{{|{{||{||||{|{|{{{{|}|{{{{||||{z{{{||||{~~~}~~}}}}|~~~||}}}}|||{|||{||z{||}}{|{||{||{|}|}}||{|{{z{z||{||{||{|{{{{{{{{}{|||||z{{|zzz{{||{||z|{|zz|{|{{{{|||||zz{{{{{|{|{||{{{z{|z{{{{{|{||||{{{z{z{z{{|{|||{{{zz{{{{z{|{{{|||{z{{{zz{|{z{{{|{{{|{{{{{|{||{}|{{z{|{{z{|{}|}{{{{{{z{{{{||{||||{{{{|{z{{||{|||{|{{{{{{{{|||||{||{|{{{{{}|||||{}|zz||{{{{{}{||||}z||{{{||||||||}|{{{{||{||{||||||{{z|{{{|||||||||{{{||{{||||{{}{|{|}{}||||||||||||{||||{|}||{|}|{{||{|{||}|||}||}{{||{{{||}{||}}}|{|{|||{|{||}|}|{{{|{|{{{|||||||{{{{|z{||{}||}|{{|z{{|||{|{{~~~}}}}}}}}}}}}}~~~|}|{||}||}|{~{|||{{||{{z|||}{{||{|{z{{{|||||{{z|z{|z{{|z{|{{||||{{|{|{{{{|{{{|{|{y{zz{{{{{{|{|}{{{{z{zz|{{{z||{||{{zz{z{{{|{||||{{{z{{z{{{|{|{{z{{{{{y{{{|{{|||}|{zzz{{{{{{{{}||{{{{{{{{{|{{|||||{{{|z{{{}||{|{{{z{{|{{|{|{{|||||{{{{{{{{|{|{||{{z|{{{{{z|{{|||{{{{|{|{{{||||}}}zz{|{|{{|}|{{||{||{{{{|}||||||}|{{||{|{|}||||}|||{||z{{||||||}}||{{||{{{|}||}}}||{|z{|{|{|||}||}|{{|{||{{}|}|||}|z}{{{|||}{{|||}{{||{z|||||||||}|||{{{|{||}||}||||{{{||||||||||}||{{|z|z}|||{||}}{||{||{||||{~~~~~}|}}}|}}}}}}~}}{|||{|}|||}|||||||{{{{{{{{||{|}||z|{{{z{{{|{{|||{{|{|{|||||{z||{{z{{|{{{{|||{||{{|{{{|z{|{|{{|{|zzzz{{z{{||{||{{{z{|z{{{|||{{{||{{{{zzz{{|||z|||{{{zzz{{{|{|{z{|z{{zz{{{{{{{}{||z{{{{|{{{{{{{{{|{z{z{{||{|{|{|{{|z{z{{{{||||{|||{{{{{z{{{{{|||}|{zz{|{{{{{||||||{||{{{{|}|||{{|||{z{{{{{{{|{|{{{{|{{{{{{|{{{||{|{zz{{{||}}||||}}{{{|||{|{{||}}|{|z{|{{{{||||||||{||{{{{|{|||||||}||{{z{{|}||}}||}||{{{|||}|||||}}|{{||{|{||||||}|{|||{|||}|}||}}{|}{|z|||{||}}||{{|{{||{|||{|{}|{|{{|{{||||}|~~~|~|}||||}}|~}|~}|}|||{}{||}}|||}||{{{{{{||{|{|{|{{{zz{|{|||{||{}|||z{{|{|{{{{{||{{|{z{z{z{|z{|{{|zz{zz{z{{{{|{||{{{z||{{{{{{|{{z{{{{yz{z{||{|{{||z||{{{{{|{{{{{|{zz{zz{z{{{{{|{|{{zz{{z{{{z{{|{|{{{{{zz{{{{{|{{|{{zz{z{z{{||{||{{{||{{{||{{{z|||{z{{yz|{|{||{{||{{{{zz|{{{||||||{{{{{{{{|{{|||||{{{{{|{{{{||{{~|{{{{|{{{{{||||||{{z{{{||{|{|{|{}||{|{{{{|}|||||{|{{||||{||||||}}{{|{{{|}|}||}}|||{{{||z{|}|||}|}||{{|{{|}{{}|||}|{{{{{{||{{||||}}|{{{{{{}||}{||{{z|{{{{{|}||||{|{|{{{|{|{|}||||{|{{{y{{z{{||{~~~~}}||}}}||}}|~}||{z|||z{|||{|||z|{{{{{||{||{|||||z||{{{{{|{|||{||y{|{z{|{{||{{{z{{{zz{|{|{{{{{{{{zzzz{{z{|||{zz{zy{zzz{{{{{{||{z{|{{z{|{{|{||{{|{{|{z{{{||{z||{z{{{zzzz}{zz{|{{|{{{z{zz||{{|||{{{{|{{z|||z||||{{z{{z{{{|{{|{||{{|{zz{{{|z{|}z|{||{z{z{z{{|{{{|{||{{{|{{||||}||{{{z|{|||{|{|{||{{|{|zz{{|||{}|{|{{||{|{|||{{{||{|{{|{{{{|{|||||||{{{{{{z|||{||||{|||||||}|||}|}|{|{{{||||{|}|}}|{{|{{{{|}|||}|{{|{|{|{|||}|||}||{|{{z|{|{||{|}||{z|||{{||{{||||}||{{{{{{||||||||{|{{{z{||{}|{}{|{|{{z{{||||{~~}}|}}||}}|}~|~}}||{{{|{{}{||||}|z{{{{z{{||||{||}|||{z{{z|{{{{|{|{{{z{}{{{{|{{|{}{{{{{{zz|||z{{{{{{{{zz{z{z{}{{|{zz{|{zz|{{{{{{|{{{{{z{{{{{||||z{z{{{z{{{{{{{{{||{{{{{zz{{{|{{{{{|{{zzz{z{|z{{|{|zz{{z{z|{{{{{{|||{{z{z{{|||||||||{|{zz|{|{{|{|{{|||{{z{||z{||{||{{{|zz{{{||{{}{|{{{z||{{||{{{{{||{{{||{{||{{{{|||{z{{{|{z|}|}||{{|z||{|{||{|||}|{|||z{|{||{|||}{|z{{{z|{|}||{}|||{|||z||{||}}|||}{{{{{{{}}||}||}||}{|{|||||||||{|{{{{{{{||{|{||}||{{{|{|{|||{|}}z{|z{|{{{|||||||{|{{zz{{|||}{||{{{{{{{{{{}|{{~~~~}}|}|||}}}}}~}}}||{{|{{||||}|}||{{|{{|{{{}|{{|}}|{z{z{{}||||}{|{z{z{{{yz{{{z{}{}{|{{zz{{{|{{{||{{z{{z{{{{{{{{{|zz{z{z{{||{||{{{{{{|z{{{{z{{|{{|{{{z{zz{{{{{{{||{{{{z{{z{|{{{{{{|zz{z{z{z{{z{{|{|{zz{{z{{z{|{|||{{zz{z{z|{|{{||||{{{{z{{{{|||||||{|{{{z{|||{{||{|{|{{{{{{{{|}}{||{{z{|z{||{||{}{{zz|||z{{||{{||{{{|{{{{{|||||||}{{{{|{{{|{{|||||{{{||{{{|||{||}}|{{{{{|{{|{|||||z{|||{|{||{}}}|||{|{}|{{{|}||||}|{||{|{|}|}|}|}||{{|{{{|||||}|}}|{|{}|{||||||||}|{|||||z{|||{|}|{||||{{{||{||||{{{{z{{|{|||||~~~}~}~}}}}{{}|}||}~}||z{{{|{|||||}|}|{|{|{z|{|||{{||{|||z{{y|||{|||{{{{z{{{zz|z{{|||{{{{{z{{||||{{{{{{{{{zzz{z||{{z{z{{z{z{z{{{{|z|{|z{{y{zz{{}|||{|z{{{z|{z{{{{{|{{{{z{{z{z{z{z{|{{|z{{z{{zz{z{||}{{z{{{{{{|z{||{}|{{|z{z{{|{|{{|{|{{{zzz{{|{|{{{|||z{{{|{{{||||{|||{|{{{{{{||||||{{z{z{{y{{{{||{{||{{{|{{{|||{{|{|{|{{{z|||||}}}|}{|{{|{|||||||}}||{|{|z{|||||}||||z{||{|{||||||||||{|{||{{}|}||||||{{z{{{|{||{}||||||z|||}||||}}}||||{{{}|{}|}|}|}{|{|||{|{{|||{}{}{z{{{{|}}{}}||||{|{{{|||||||}||{{z{{{z|{||{~~~~~|~|}|}}|~}}}|~}|{{{{{|{|||}||}}||{z{||{z||||{|||{{{{||{|{{{z|{|{{{{{{{{{|{{|{}{{{{{{z{{||{{|||{{{{{z{|{|{{|z|{|z{zz{{{{{{{|{||{{|z{{{zz{{|{{{|{{{{zz{zz{{{|{{{||z{{{zz{{{{{{}|}{|{{{|{z{||{||||z{z{{|{z{|{|{{z}|z{{{{{{|{{{{{{|zz{{{z|{zz|{|{||{{{{{{z{{||{{|}||{{|{{{z{|}||}|{|{{{z{{{||||{}}}||{|{{{{||{z{|}{||{z{{{{||||||||||z{{||{|||}}|||{{{|{{{{|}|||}}}}{{{|||{||}{||}|{{{{{|||{||||}}||{||{||{|}||{}}}|||{|{z||}||{||}|{|{||{{||{|}{{}{|{{|{|{}|||{}}}||{{||||{|||{|||{{|{{{{{||{{||||{|{{{{{|||{||~~~|~}}}|}||}|}~}}}{||}||{||{|}|}||{|{{{||||||||||{{|{zz{{||{||}||z{{z{{{{{|{{{{{{{{{{{{{z{||{{||{z{|zz{{{z{{{zz|}zz{zz{z{|{{|{|{{{z{{{{z{{|{|{|{{z{|{{z|zz|{{{{||{z{{{{|z{|{|z|{{|z{z{{z{{|{{||||{zz|{|zz|{{{{|||{{{{|{{{{{{{|}{||z{z{zzz{{{|||||{|{z{z{{{||{{{||{{||{{{{||||{|{|z{{{||z{{|||||||{{{|{z{{{||{{{|||{{|||z{{|||||||{||{|||{}|{||}}}{|{{{|{{{||{|{|||{z|{|{{|{}{||}|{{{||{|{{||||}~|||{|||{{{}|}|~|||{||}{|||}}{||||{{{||{|||||||{}~|{|{}{|{|{{|}||}|||{|{{{{{|{}|}}||{{|{||{|}||{}|{|{{{|{||}{||}~}~}~~~~~}}}}||||||}}{}}||{~|{{|{||}|}|{{{{{{{z{||{||||{{{{{z{z|{{|{|{}{{{{z{{{{||{{{||{{zzz{z{|z{{z||{{z{yyz{z{{{|||{||zz{{yzz|||{z{{z{z{z|{z{|{|{|||{{{zz{{z{|{||{{||{zz{zz{y{z{{z{{z|{{{{zz{z{{{||{|{z{{{{z{{{{|{{|{zzzz{{z{{|{||||{{{{{{{{z{||{|}{|{{{zz|{{{z|{{{|}|{{{{z{{{}{{|{|{{{{{{{z|{{|{|{}{|{{{{||z||||{|{|{{|z{{{{||{|{|{|{{|||{|{|{{|}|{||{{|z{{z}||}|||{{z{{{{||}|||}|}{{|}{{}{}|}||||||||z|{|{{{}||||}|{|{|{{|{|||||}|||{{|{{||{{|}{|{}{{|{{{{|{|{}|}}}{||{z{{{|||{|{|{{|{{{|{{|}|{{{}|{{z{z{{{|}|{|~~}~~~~}|||}|}}~}}||~~||||z{||{}}}}|}{||{{||{{{{||||||||{z|zz|z|{|{|{{||{|{{{|{{|{{{||{{{{|{{{{|{{z{{{{{{zzz{{z{{{{z|{|{{zz{z|z{{||||||z|{{{{z{|{{z{|{{{||{{{zz{{||{|{{{z{z{zz{{{{{{{{|z|{{|z|{{|{{{||{{z{{|{{z{|||}|{|{{{{{{{z{{{|{|||{{{z{yz{{|{{||||{{{{z{{{{{{|{||||{|{{{{{{|||{|}|{{|z{{{{||}|||}{|{{|{|z{|{||{{|{{||{z{|{|||}{|||||{{|}|{{|{|{}|{{z{|||z|{|{|||}||{{{|{{||||{|{|||{}{|||||||||}||}{{||z|{|||||}}}|{|||{||||||{||||{{||{{||||}{|}}|{|||{{{||{}|||}|{z{|{|||||||||}|}{{{{|{{|}}||{~{{{{||{{||}|z~~}~}~}}}{|{}}}|}}}}}|}{|{{{}|}|||~||z}z|{{{|{|{{|{||{{{{|{{|{|||{||{{{|{{{{z|{{|||{{{zz{|{{||{z{||{{z{z{{{z{{|{||{|{z{zzz{{{{{{{{|{{{zzzzz|{{|z||{{{zz|zz{z{{{{z{|{{{zz{zz{|{{||z|{{{z{{z{{z{{{{}{{{{z{{{|z{{{|}|||z{z{||{z{||{||{|{{|zz{z{|{{||}{|{{{z{z{{{||{||||{{{|{{{{||||{{{{z{zz{z{{{|||z|||{||{|zz{{||||||{||{{|{{{}{||||||z{{z}z{{||{}||}|{{{{|{{|||}|||||{{{{{{|{}||||}}||{|{|{{|||||}}}||{|z}{{{|}{|}{}{|||{|}|{||||||{||{||{{{|{|||}}}}|||{||{{||{|}}|||||{||{{{}||{||}|{{|z|{{|}}|||{|{}|{|z{|||||}~~~~~~}~}}}}|||{}|}}}}|||}|||{||{}{{{}||{{||{||{}}||{||{||{zz{z{{{{|{||||{{zzz{z{|{z|{|z|{{{{{zz|{|{{|{{{z{{|{{|{{{|{|{|zz{z|{{z{{{{{{|{{{{{z{zz{|||{{||{{{{{z{{|z{|{{|{|z{{z{{z{{{{{zz{{{z{{{z{z{|z{||{{{{{{{{{{{{{{{|{|{}{{{z{{{||{{||{{{z{z{|{{{{{||}{|{{z{{z{||{{||||{{z{{{{{|{{{|{|{|{{z{|{||}{{|{||{|{{{z{{}{{|{{z{{|{||z{}|||}|||{|{{z{{{|{{}}{}|{z{{{|{z{}{}|||{|z{z{{{|||||}||||{|{{||{|||||||}|{|{z{|||||}|||}|{{|{{||{{}|{|}||{|{{||{|}||}||||{{|||{||||}||||{|z{{{{|{{|||||{{{{|zz{{||{{{{z{{|{z{{|{{{|||~~}~}}}~}}|}|||||}}|}}}}}||||z}|{|{}|||}}}{{{{z{{|||{|{{||{{z{{|y{{{|||{}{z{z{zzz{}{{{{||{z{z{{z{{z{z|}|{{{{{{zz{{{{{{|{|{{z{zzzz|{||{{|{zz{{{{{{{z{{{||{{{z{z{zz{{{{|{|{{{z{{{{{{|{{||{{{{{z{z{zz{{}{|||{{z{zzz{{{|{||}}{{{z{{|{|z{|{|{{{{{{{{z||{|||{||{z|{{z{{|{||{|{|{{{{{z|{{{{{||||{{{{{{|{{|||{|}{{zz|{{{|||{{{|{|{{z{|{{|||}}{}|{|{{||{|{||{||||||{{{|{{|||||||{||{{{{{{{|}|||{||{{{||||{|||{|}|}}{{{{{|{}}}|}||}|{|||zz{||||||||}z{|{|{{|||{}|}|||{|||{{||}}|||||{|z{|{{|||||||}|{{{{||{z||{|||}{z{{{|z{|}{{{~}}~|}~~}}}}~||}}|}|}}~}}|||zz{{|||}{}|}|z|{{z|||||{|{|}{{{{z{{z|{|{{{||{{{{{zzz{{{{{{z|z{{z{{z{z|{{|{{{{{z{{|{|z{||{|||{{{z{{zz|{{|{|{{zz{{z{{z|{{z{{|{{z{z{z{{{{{{{{{|{{zzz{{|{{{{{{||{z{{{z{zz{|{|||{z{|{|z|{{{}}{{|||{{z{z{z{{{{{{|||{z{{{z{{{{|{{{|zz{{{{{z|||||{||{{{z|{{z{|}|||||{{|||{z{{|{{{|||{{z{{z{{||}{|{||{||{{|{||{{|{}||{{{{{z{{|{{{|||||||{{{zz}||{||}||{{|{|zzz}}{|}||{||{|{{{|}{|{|}}}{{|{||{||||||}}|z|{{|||{}|}|}|||{|{|{{|||{{}{||{{{{{|{{{||}}||}{|||{|{{{}{|||||||{{{{{{||{|||||{{{zz{{{{||{{~~~}~~~~}}}}|}|}||}}}~}}}||{{{|{{||}|||}}}{z|{{{|||||{{|||{|{{|{z{|||{|||{{{{{{{{{|||{||{|{{zz{{z{||{{{{|{{{{z}z|{{{|{{{{{|{zz{z{{{{{{{||{z{{|z{{{{|}||{|||{{{{z{|{|{|||{|zz{z{{{|||{{||||{|{z{{z{{|{{~{|{{|{{{{||{{{{||}{{{{{{{|||{|||{}zz||{{|{}{|||{{}{{|{|{|{{|||||}||{{{{z{{{{{||}|{||{|{{{{|||}{||{|||{|{{{||{|{}}|{{||{|{||||}|}||{||{{|{||||||}|}}{{{{{{||||}}|}||{||{|{|||}{}|}||}||}|||||}{|}|||||}||{{|||}}}}|}{}|{{|{}||}|}||{|||}{|||||~|||}}|||||}}}}{}}}||{{|{{|{|||||}|||||{|{{|{|}{}{|}||||z{{z{}||{{~~}~}~~~}|~~~|~}|}|{}}}}{}}}}|{|{||{{|{||~||||{{|||{{{{||{|||{{{{{z{z|z|}|{{{z{{|{y{{{||{{{{{{{z{zzzz{{|{{{|{{{zzz{z{|{{|{|{{{{z{{{{{z{|{|||{{zz{z{{{{{|{{{||zz{{zz{z{|{{{{|||{{zz{{z|{{z{z{|{{zz{z|z{|||{|{|{{{{|{{z{z{{{{||{|z{{{{zz||{{}{|{z|{{z|{{||{|||}{|{z{{{{{|||{}||{{{{{{{{{|||{|}{|z{{{{z{||{{{|||{{{|{{{{}}||||||{{{|{||{}{{|{}||z{{{{{|{|||{|||{{||{{{{{{|{}|{|||{{z{{|{|}|||||{|||{|||{{|{||}}||z{|z||||}}{||}}|{||z|{||{|||||}{||{|{|{{{{}{|}}{|{{|{{{|{|}||}|{{{{{{|{{|||}}||||{{{{{{}|||{{|{{{{{{|{|||}||~~~}}~~~}~~~}|}||z{|}||}}}}||||{}{|{|||||||||{|{z{|{|{|}{{}|||{{z{{{{{|{||||{{z{{|{z|{{{{|||{z|{z{z{{{|{{{{|zz{zz{zz{|{|{{|||{zyz{{{z{{{{{|{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{{{{|{{|{||{z{z|{{{z{|{{{{{|{{{{{|z{||zz{|{|{{z{|{{{z{{{{{z{z{|{z{{z{|||||z||{{z{z{zz|{|||{{{{{{{{z|{{{{|}|zzz{{z{{{{{{{{|{|{{zz{z{z{{||{||{{{{{{|z{{{|{|{|{{{{{{{{{||{|||}{{{|{{zz||||{{{|{{{zzzz{{}{|{||||{{{{{{{{{{{||{{{zz{z{{{{{{{{||||{{|{{{{{|{|{|}}{|{{|{|{{|{||||{{||{{{|{|{{}|||||{{{{{{{{||}|||||{z{|{|{|{|}|}}}{{|z|||||}||}}||||{|{|{{|}|}||~}{{{||{{{|}|{||}||{|z|z|{|||||}}||||}{|z|||{|}}}}|{{{{z{||||||{||z|{{{{{{|||||{}||{|{|{{{{{|{|~~~~}~}|~~~~~}~~~||}||}}~}}}|}||||{{{{{||||}|}|||{{}z{{{{||{{|{||{{z{zz{|{||{{||{z{zz{|z||z{{{{{{{{z{{zz{||{{{{||{{{{zz{|{{{{z||zzz{z{{z{{||{z{{{{{{{zz{z{{{{{||{{|{z{zz{{{|{{||{{zzzz{{{{{{||{{z{{{{{{z{{{|{{{|z{{z{{||{{{|{}|{{{yz{{|{{{|{z{||{z{zzz{z|{{{{{|{z|{{{zz{{{|{|||{{|{{{{|{{|{||{||{{|{{{{z||{{{|{||{{{}{{{||||||||{{{{{|{{{||||}{|{{|z{{{{}|{|}|||{|{|{|{{{{|||||{{{z||{{||||||||}|||{z||{||{|}|||{{{|||{{|||||}|}{{{||z{|||||||}|{{{||{{{||}|{||||{}{|{{{|{{{|||||{z||{{||{||{|||{{{z{{|{|||}||}{{|{z{z{z}{|{}~~~~~~}}~~}}}}|}||}|||}}|}}{}}}|z||{|{||{||}|||z|z{{{||||||||{|{{|{{{|{|{|{}{|z{{z{{{z{|{{{{||{|{z|yzz|{}{||{{{{z{{{z{{{{|{|{||zzz{z{{{{||||{{|{{{{z{z{||{|{{|z{zz{{{{||{{{{||{{{z{z{{{{z{z{|z{{{|{{{{{{{{|||||z|zz{{zz||||{||{{{{{{|z}{|||||||z{{{{z{{{{{{|||{{zz{z{{|||}}|||{{|z{||{{{||{|{|{{{{{|{{z|}{|{||{{z|{{{z{||{|||}|||||{{{{}||||||{|{{{|||||{|}||~|{{{|{z{||}|||}|}||||{|z}}|||}}}{{|{{|{|||||||~|||{|{|||{}||}|}|||}|{|{|}|}}|||||{|{{||}|{||||}|{|}{||{{||}}|}|}{|{{{{{{||||}|}|}|{|{{|||{||||}}|{{{|{{{||||{~~~}}}|~}~~}}~~}|}|||{{||}}|||}}|{|||{{|||{{{|}||{z|z{|{||}|{|||{{{{z{{|{{{|{{{z{{z{z|{{{|{|z|{{{z|{|z{{|{{{|{||{z{z{zzz{z{|{{{|zz{zz{z{{{{{z||z|z{zz{{{{{|{||{|{{{{z{zz||{{z||{z{{{{{z{{{|{{{|{{{z{{z{{|{{|{|{}{{{z{{{{{{|{||||{{{{{{z{{||z{{||{{{z{{{|{{|}|{{|{{{|z{z{||{|{{|}|z|{{{{|{|{|{}{||{|{{{zz||||{{|||z{{{||{|{|{||||{{|{{{{{||}}||||{{{{}z|{|}|||}|||z{|{{z{|||}}{|||{|{{{|{|}|}{||}|{{{||{{{|{{||{}|||||{|}|}}|}|||{|{|{||{{|}|||}||{|{||{|{|||||}}||{{}{|{|||||}}}|z{|{z}|{|||}|}}{|{{{{{{|||{{}|||{|z|z{{{}||}~}~~~~|}}~~~}}~}}}|}||{{}{}|}}||}|||{{{{{|}||||}{{{{{{|||{|||{z|||{zzz{{z{|{||{|{{{{z{{{{|{{zz}{|{z{zz{yz{{{{{|z|{z{zzzz{{{{{{||{{z{{z{z{{{|{{|{{{{{{{zz{z|{{{||{{{{zzz{z||{{{||{{zz|{{{z{|{z{|{{y{{z{{{{{{{z{{}{{|{{{{{{{|{|||||{{{{{{z|z|||||{|{{{{z{{{{||{||}|{|z{{{{{{|{|{{}{{{{zz{{z{}||{}|{{z|{{z||{}||}|}||{z{||{z{||{|{||{{{|{{|||{}}||||{{{{{{||{||||||||{{{{z{{||||}||{{{{{{{{{||}|}{}}{|{{{{{||||||}|||{{{{|{{|}|||}|}|z{|{|||}{{|{||}|{z||{|{|}{||||}|{{||{{||}{||{}}||{z|{{|{|{|||||{}{|{{{z|||||||{{{{|{{{z}||{|}~}~}}}~~}~}~}}}~}}{|}||{|~|{|}}}}||{{{{{|||{{||||{{{{{|{{{{||{|{{{|{{z{z{{||{|{|{{{z{{z{{{{z{||{{{{{{{z{{z|{{|{z|z{{{{{{{{{|{||{{z{{z{{{{|||{{|{{zzz{{{{|{{|||||{{{z{{{{{z{{{{||{{{z{zzz{z{{|{|{{{{z{zz{z|{{z|{|{{{{{{zz{||{z|{||{|{z{|z||z|{z{|{z{{{z{|{|||{||{zz{zz{{{{{{{{|||{{|{{z{|||||}{{{{z{|{{z{{||{{{|{|{{|{z{{{|{{|||||{|{{{{|||||||||{{{{|{|z{|||{||}|{{{{z{{~|}{{||||{{|z|{{}|||{|||{{{|{{|||{|||}|}{{{|{{{||}|{|}|}||{|{||{}||{|}}||{{{{z{{||||}|{|}|{||{{|||{|||||{|{z{|z{|||}{}||{|||{{{{||||{}||{||{{z{{{|{|z~~}~}|~}}}}}}}}}}}||{|{{|||}|}|{|}||{|{{{{|{{}||}|{|}{{{{{||{|z|||{{{zz{{y{||}||{|{{zz||{|z|z{|z|{|{{{{{{z{{|{|||{}{z{z{zz|{z{{|z|z{{zzz{z{{{{|{{|{z|{{{zz{z{z|{||{{{{z{z{{{|{{{{{||{{{zzy{|{{{|{|{{{{z{{zz{{|{{|{{z{{|z{{||{|{{|{|{z{z{{|{||{||{|{|z{{z{{|{{|||||z{zz{{{{{|{{{||{{z{z{z|{{}||||||{{z{{zz{||||{||||z{{{{|{{|||{|||||{z|{{{||||}{||||{{{{|{{|||}}||{{|{{{{|{}|||{}|{{{|||{||||{||||zz{{||{||}|||}||}||z{||||}{|{|}}||{||{}|||}}||{{|{|{|z{{|||||}}|{{z|{{||{{{|}||}||{{|{|z{||||||}|{z{zz{{{|}}{||{{{|{{z{{||{|{~}~|}}~}}|}}}~}}|||{z{{{}}|}}}|}{|{|{}z||||{}}}||{{||{{z|||||||||{{{{{{z{|||{{{|{{{{{||{{{|z||{{zz{{{{{z{{{{{{{{|z{z{|{{{{{{{z||{{zz{{|{{{{{|{|{{z{{z{z{{{{{{||{{z|{{zz{{{{{{|{|{{z{{{{{z|{z{{||{{{zz{{{{{{{{{{|{{|{|{zz{{{|||||{{zz{z{{{|{|||||{{|z{{{|{||{{}||z{{zz{|{{||}{}||{|{{{{z{{||{{||{|||{{{z||{}|{||{{{{z{{{{|||||{|||{|{||{||{|}|}}|{z{{{{{||||}{|}|{}z|||{{|||{{||}}z{{{{|||}||}|}}|{|{{{||||{|}|{}||{{||{|{}||}|}||||||||{{|}|{||}}|{||{||||||}||}||{||{{||||||}}}|{{z{|{z||||||{||}{{z{{{|||{{{||{|{z{|{|{{{||~~|}}}}}|}}}|}}~}}||||{|{}|}|||}}|}}{{||||{|{|{|}|{|{{z|{||{|{|}|{{{{{{{{{|{|||||{{{z|{|z|||{{{||zzz{{{{z{z{{{}|{{z{z{z{{{|z{{|{|{z{{zz|z{{{{||{{{yz{zz{z{{|{|{{{||{z{{{{|{|{{{||{zzzz{z{{{{{{z|{|z{z{{{z|{|{{||{zz{|{{{{{{|||{{|{{z{{{z{|{|{||z|z{{{{z|{{{{}{|{}{z|z{z{|||||||{{|z{{{z{|z{||{|}{{{{{|{{z{||||{{{{{{z{{{{|||||{{|{{|{|{{{{{|}{}||{{{{|{|{||{|{||}{{{{|{|{{|}||}}|{{{{{{|{|{||||||{{{{{||||||{{}|}||z|{|{|{~|{}}||||||{||{||}}}}{{|{{{{{{||z{|}||}||{|||{|||{}||}|{{|||{{{{|{|{||}|||z{{{{{}{||||{{|{{{{{{|||{|~~~}}||{}||~~~}|~}}{|||{||||}}||}}}{|{{||{z||{||||||{|{zzz|||{|{{|||{{z{{|z|{||{|{|{{{zz{|z{{|z{{||{z{zz{{z{{|{{{{zz{|{z{|{{{{|z|||{{{z{{{z{z|{{{{|{z{zzzz|{{|{{||{|z{|zz{{z|{|{{~|{{z|{z{z{{{z|{{||{zz{z{zz|{{{|{{{|{{y{z{{{||{|||{zz{{{{{|{|{{||{{{{{{{{{||{|{}{|y{{{z{{z{{{|||{{|{|{|{{z|{{{|||{{{{{|z{{||}{||}{{|{{{z{|||{{{}|{{{||{{{{{|{}|}||{||z{{{{|||}|}||{{{||{z||||{|||{{{|{|||{||||}|}{{|{z{||||{|{}||}|{||{{{{{||||||||{||z{|{|||||||}}{{||{{}||||}|}|{|{||{{}}{{||||{{{|{|z{y{||}|||||{{|{{{{{{{|||{|{{{||{{{||||{}}|||}}|||}}}}}|}}|{||{|}{}||||{||}||{|{{{||{{|||{{||z{{zz{{||{||||{z{{{zz||||{{||zzz{zzz{||||{|||{zzzzz{{{z{{{{|{{{{zz{{z{z{{{{{|z{{y{z{zzz|{{{{{{{zzy{zy{{{{{|||z{{zz|z{{{{{z{{{zzz{zzz{z{{{{{{z{{yy{{zzz{z{{{{{z{y{{zzz|z{{||{}{{{{{z{z{||z{{|{{{zzz{{z|{{{|{{{z{{zzz{{||{|{{|||z{z{zz{|{}{{{||{z{{{{{{{{|z{{|{{{{{{{z{{{{z||{{{z{{{|z{z||||}{{{|{{{z{{{{{|{||}|{{{zz{|{}|||||||{{{{{|{z||||}|||{}|{{|{||||}}}{|zz{{{{||}|||{}||{|{{{{z}|}|}||||z{{||{|{|{{}}|{||{{|}{{{{||||||{{{{||{{{|||{z}{{z{z{z{{{|||{{|{{{zz{y|{z{{{}}~}|||}}}||}}||}|}||{{|z{{{||||{}|||{{{{z{||{}|||{|{{|{{{{{{|||{|{{|z{{{{zz{{||{z|{zz{{{z{zz|z{{{z{{{zzz{|{zz|{z{{z{z{{z{zzz{{|{{||zzzzzzzz{{z{{{{{z{{{zz{z{z{{||{{{zz{zzzz{{z{{|{{|zz{z{{z{{{{{z{{{{zzz{zz{{zzz{|{zzzz{|zz{{{{|{{|{{z{{zzzz||{{{{|{zz{{z{{{{{|{{{|zz{zz{{{|{|{{|||{{{z{zz{{{{{z{{|{{{{{{{{{{{{{{|{z|{{{{{{{|{{|{||z{{|{z{{{{{}|||||z{{{{{{|{{{{{|}|{{{|{{z|||{|{||{z{{{{zz{{|||||}|{{{{{{{{{{||{{}|{{{{{|{||||}|}||{z{{{|{|||{{{}{||z{||{{}||||}|{{|{|{zz|}{||{||||{{zz{{{{|}{|||{|{{z|{{{|}{|{|||{z{{{{zz|{{{|~~~}~}}|}||}}|}||}}|||{{{{{||||||||||{z|{zz}{{{{}}{{{{{{{{{||||{||{{{zyz{z{{|{||{{|{{{{{{zzzz{zz{{z{{|z{zz{|{{{{{|{z{zyz{zz{zz|z{|{zy{{z{zy{||zz{|{{{{zz{z{{{{{|||{zz{z{z{{{{{{|{{z{{zz{zzzz||{||{zz{{{{zzyz|{z{{{|{zzz{{{yz{{||{|{|zzzzz{{|{|{{{{{z{{z|zz{|{{z{{||{{{z{{zz{{||{{{{{z{{{{|{{{||||{}z{{{{{{{|||||{|{{z|{{z{{{|{{|{||{z{z|zz{{{||||{{z{{|{||{{{|}{||{|{{{{{{{||||||}{|{|{{{z{|||{||||{{{|{{{{{{{{|||z|zz{z||{|}|}|{{}{{|}{{{{||||||||{|{{{{z{{||||{||||{{||z{|}|z|||}{{{z{z{{{{|{|||{|{z{{{z|{{||{|{|{|z{{{{z|||z{~}~}|}}|}|||~}}}}|}{{{||{|{{}}}}}||{{|{{{{{|{{{||z}{|{{{zz{|{|||{|{|{zz{{|z{||{||||{z{{{z{{{||z{}{{z{z{{{{{{|{y{|{{{{zzz{z|{zz{{{{{{{{{zzzz{{{|{{{{{{zzyzz{{z{|zz|{{z{zz|{{|{{|{|{|{{zzz{{zz{z{z{{{|{zz|zz{{{{{|}{{{z{{{{{{{|{}z|||zzzz{z{z{{{|{{|||{{{{yz{{{||{}|{{{{{|{z{{|{|||||{{|{{z{z|||||{{||z{z|z{|{||{{{|{|{|z{{{{{|{|||{{{{{{{{|{{|{{}||{{{|z|{}|||||||{}{{{{{{z{{|||{||||{|{|{{z|||{||{|{{{{{|{||||{{|{||z{|{{{{{}{|}|||}{{|{z{{||||{}|||{z||{{{|||{|||}|{{|{{{|{}{|}|||{||{|{{|||{|||||{|{|{z{|||{|||||||{{|z{{}{|||~}}}}}|}||{|}}|}}~}|||{|||{||{|}}}}}|z{{{{{{||||}|{|{|||{|{|}|{|{|{{{{z{z{{{{{|{|||{{zz{zz{{|z{{{||z{{z{zyz{{|{{z{{zzzzz|{z{{{{|{{|zzzzz{z{{|{zz{{{{z{zy{zz{{{|{|{|z|{{zz{{{{{{||{|zzzz{{{{{z{{{{{z{z{zzzzz{{|zz|z|zzz{{z{z{{{{{{|{{z{{|z{z{{|{{{{{|{z{{{{{{|{{{{{{{{zz{{zzzz|z|z|{|{{{{y{yz|{|||{|{{{{{{{z{|{{|{|{|z{{z{{|{{|z{||{|{{{{{{|||||}|||{{|{||{{{|{||}|}{{{{{|{{{|||}|{{{zz{{{{||||||||}|||{{||{{{{z||}||{||{||{{|||}|}}{|{|{|{{||||||||{{z{{{{||||{{}||{{{{|{|{{||||||{{{{{{{{{{{||||||{{{{z{{z{{{||||||{zz{{{{|||{|~}||}{||||||}}|||}|{}|{{{{|{{|{||}|{z|{{z{{{{||}|||z|{|{|{{|{|{{{||{{{z|z{{zz{{{{|}z{{{{{y{{{z{|{|{{z{{z{{z{{|{{z{||{z{{{zz{{{|z||{zz{z{z{zz{{|||{z|{{zzzzz{|{{|{||z{{{z{{{zz{{{||{{{zzz{zz{{{|{||{z{z{{z{z{{{|{{{{z{zzzzzy{z{{{|||{{zzzzz{{{|{z{|}{{{z|z{{z|{z|{{|{yz{zz|{{{{z|{|{{zz{{zz{{{{|}|{{{zz{{z{{|||{{{|{|{{{z{zz||{{|||}{z{z|z{{{{|||{|}z{z{{z{{|{||{{|||{{||{zz{|{{z{|{|{{{z{z{||{|{|||||{|{{{{z|{{||{||{{|{{{{||||||}||z{|z{|{}|{|{|{{|{{|||z{{{|z{|||{z||{{{{||{|{|}|{{{z{z{{{{||{{|}{{z{{{{z|||||||{{{z{zz{{{z{|{}|~|||}||||||~|}|||{|{|{{{{}}|||}||{{{z{|z{{|{{|||{|{|{|z{{{{||{|||{{|zz{zz{||{{{z{{{{{{{zz{{{{||{||zz{{{zyz{z|z{{{z{{{zz{{|{{{{|{{{z{z{zz{{{{{{{|{{{z{zzzz{{{|{|{{zzz{zz{{{|{{{{|||{{{{y{zz{{z{{|{{z{zzy{zz{{{{{{{{{zzz{zz{{z{{{|{|zzzz{z||{{{|{||zz{{{z|{{|||{{|{{{zzzzz{z|z|{{{|{z{{{zzzz{{z||{{{{{{{|{z{|||z|||{z{|{zz{{{{{{{z}{z{{|{z{{{|||{||{{zz{{|{{{{|{|{{|z{z{{{{||{|{||{|{{|{{{{|}||{||}{{z{{{{{{||}{|||{{{{{{{{{||||||}{||{|{{{||}|||||{z{{{}{|||{{||||{|{{z{{|{|{|{|}|{{{z{|z{|{|{{||{|{z{z{{z{|||{{|{z||{zzzz||{|{}}~}}|}|}|{}}|}}}{}||||{|{|{|{|~{||||}{|{z{|{||||{||||z{z{{{{|||{|||{z{{z{z{|||||{|{{{{{{{z|{{|{|{{{z{{{zz{{{{z{|{{{{{{z{zz{{{|{{{|{{zzzzz{{|{{|{{z{{{{z|zz{{{z{{{{z{{zzz{z{||}{|{z{{{{{{|zz{zz{||{zz{zzz{{z{{{{|{{{z{{{|zz{{{{{{|{{zzz{zz{{{{{{|{|{z{{z{{{||{{{||{z{{{y{{{{||{|{||{z||{{{{{{||||}||{{{{{{zz{|{||}{|{{z{|z{{|{{{|||{{{|{{{{{||||||||{{{z{{{z|||}|}||{{{{{z|{|}|}|{}|z|{{{{||}{{{}{||{{{{|{|{|{|||||||||{}{{{}||{||}|{{{{{|||||}|}}{||{z|{{{|{{{|||{||{||{z|{|||{|||{|{{{z{{{{{|{||||{{z{{{|||z||}{{{{|{{{{z}{|{|}~}}}{|{{|}}}|{|}||{|}{{z{z|||||}|}|{{z{||{|||{{}|||{|{|{|{||{}|||{|{zz{{{{{|z{{{{{z{z{{zz{{{zz{{|||z{{{{z{{{{z{{{{{{{z{zzz{|z{{|||zzz{zzz{{|{{{||{{{{{{{z||{|{||{|{{{{zzzz{{{{{{||{z{{|{{z{{{{{{{{{{{{zz{{zz|z{{{|z{z{{{{z{{|{|{z|{z{{zy{{|{{{{{||{{{zzzzz|{{{z|}{{{{{{z{{{{{{{}||{{||{z{{{|||||||{{{{|{{z{{|||z|||{{{{{{{{|{{||||{{|{|{{{{}|}|}|{{|{{||||||{{||||{{{{|{{{|||{{||{|{{z{||z}}{||}|}{{z{|||{|{|{|}||||{|{{{{{}|||||}||{|{{|{}|{||||||{{{z|{{|{}|||}|||{|{{|{{||{|{|}|{|{{{{{||{{||}|||{{zz{{|{|||{|{|z|{{{{{z||{{}{~}~|}|||{}|}}||||||{|{{|{{||||{|}}||z{{|{{{{{|{||{zyzzz{z{{|{|{{|{{|{{{zz|{|{{|z|{{|{z{{z{{zzz{|{{zz{zzz{{{{z{{{{z{{z{{{{{z||{{{|z{zz{zz{{{||{{{{|{zzz{zzz{{{||{{{{{zzzz|{|z{z{{{{z{zzz{z{{z|{z|{|zzzz{{z{{{{{|||{{z{zz{{{{{{{{|{zzz{z{{{{{|{{{|{{{{{z{zz|{{z|{|}zz{{{zzz{z{{{||||{{{{{{z{||{{z|{|zz{z{z{{|||{{|||zz{{{{z||||{{{|{{{z|z|{|z}{||||zz|{{||{||{{||||{z{{z{{{|||||}||{{{{{||{{||{|}||z{|{{{{|{||||}|||{|{{|{{{}||||}||{||{{{||{|||{|||z||{{{||{|}||{|}{{|{||{||||}|||{{z{{{{{{{{|||{||{{{{z|{z{{||||{{{|{z{{|||||{~|~}}|{}z|||}|{||||}{{||z{{{|{|||{|{{{{z|{{|{{{|{{||{z{{{{{{{{|{||}{{{z{z{z|{{{||{|{z{{||{z{z{{z||{{|zz{z{z|{|zzz|z{z{y{{z{zy{{{{{{zz{{{y{{{{{{{{|{{{z{z{y{{{z{|{{{{{zyz{z{z|{{|{||{{{{zzzz{{{{{{z{{z{{zz{z{{{{{{z{{{{z{zz{{{{|{{||{z{{{z|z{{{|{|||{{z{zz{z|{{{{|||{zz{z{{zz{|z{|{|{z{{{{{{{{{{|||{|{{{{{z{{{{||{|{|{{{{{{{||||{|{|{|zz{{{|{|{{|}{|{{{z|{{{|||{{||{|{{{{||{|{{|{|||{||{{{{{{|{|||||{{|{{|{{|{z}{|~||{||{{{{{}|||}||{|{{|{{{|{|}|}|}}{{|{{{{|{{{{||}|{{{{{{|||||||||{{{{{{{z|{z{||{||{{{z{z{||{{{{|{{{{z|z{z|{{{{}|}||}{}||{{}|||||}{|{|{z|{||{|{}|||{|{{{{z|||{|||{|{zz{{{z{{{{|{||{{z{{y{z|{{{{{{|{{|z{{{z{{z{{|||z|{{z|z{||{zz|{|{{yzz{zz{{{|z|{{zzz|z{{zz{zz{z||{z{zz{z{||{{{z{|{{{zzyzzz{{|{{{|{{zzzzzy{{|{z|{z{{{{{{zy{z{|{{{{{yzzz{z{{{{{{{{{z|z{{z{|{z{|{||z{z{{{{{{{{||z{{{{z{{z{z{{|{{{{{{{z{{{zz{{{{{}|{{{{{{{{zz{{|{{||{z{{{zzz{|||||||||{z{{{zz{|{||||||{{{{|{{{}{{{|||{{{{z{{{{|||||}|}{{|{z{{|}{z|}}|{{{{z||{{{|||}|||{{{{|z||}||||}||{{|{{{z|{||{{|z|z|{|{{z|{||{|{{{z{z{{z{{|}|}}||||{z{||{{{{||}|}|{{zz{{{{{||{|}{{z{{{{{{|{|{{}|||{|{{|{{{|}|||||{|{{|{{{{||||}|}||{{z|{{{|{{}{{{{{zz|{{{{{|{|{}|{zzz{z{z{{z{|{{|{{zzz{{{z{{{{{{{z{{{yzz{zz|{zz{{z{zzzzzzzy{|{{{{{z{{z{zz{z|{{{|z{zzz{{zz{z{z{{{z{z{z{z{{z{{z||{{{{z{z{zz{{{zzz{|{|{zzzyzz}{{z{|{{y{{zzzz{z|{|{|{zzzzzz{zz{z{{{{{{z{zz{zz{z|{{|||y{{{z{zz{{{|{{{|zz{{{zzz{|{{{|{{zz{{{{{{{||{zz|z{|{|{{z{z|{{{{||{z{z{{{{{||{|}}|{{{|{{|z{|||{}|}zz|z{{z{{{{{}||{|z{|{{z{||{{|||{{z{{z{{{{|||||||{{{{z{|{|{||{{||{{{{zz|{{|||{}{|{zz{|{{{{{|{||}|{{{{{{{z|{|||{|||{{{{|zz{|{{{|||{{{|{zz{{{{{{|{|{{||{zy{{{{{|}}}|||{{||||}}{||{}{|||||{|||z||{|}||{{{||z|||{||}|{|{{{z{z|{{{{|{|{{{{zz|zzz{{}}{||zz{zy{z{{|z{|{{{{zz{{z{{{|{{{{{{z{zz{zz{{{{{|z|{{zzzzz{{|{{{|{|{zz{zzy{{{|{|{{|zz{z{z{z|{{{|{{|{{z{z{zz{{{z{{{|{z{z{zz{z{{{|||z{{{{|{zzz{|{{{|||{{{z{|{{|{{z{{|{{|z{z{z{{z{{|{|zz{z{zzz|{|{{{||{{{|zz{{||{||||||z{{|{{{||||||}||{{{z{z{{{||||{{|{z{|{{{||{|{|{}{|{{|{|{|{||||||{|z{{{{z{||||{}{{{{{|{{||||{||||}{z||}|{{|}|||{||{{{{|{{|{|||||||z|||{|{{|||}{|||{|{{{{|{||{}|{|{{|{{{{{||||{|}}|{{z{z|{{|||||||||{{{{||{{|{{{||{{{||||{{|{||}}|}||{|{|{{}}||{||{|{{zz{z|{}|||||{{{{{{{z|{{||}}|{|{z{{z{{{{|{{|}{{{zz{{z{||}{||{z{{{z{zz{{{{{||{|zzz{z{z{z{|{z{{z{z{z{{z{{|{{z{zzz{z{{{{z{{||{|{{zzzz{y{{{{|{{|z{{|{z{zz|{{{{||{{zz|z{{zz{{{z|{{{{{zzzzz{|zzz||{zz{z{{{{z{{||{{|{{{{z{zz||}{|{{|{z|{|z{z|z{{z{||{{|zzz{{{{{{|{||{zzz{{{{|{{|{{|{{{{{{{{{|{||||||{z{|{{{|{|||||||}{{{}{||||{{||{|{z{{{{{{|{|||||||{{|{{{z|||{||{|{z|{{{{{||{||}}|{{|{{z|}|{|{||{|||{|z{|{|}{}||{||{||{{|||||||||}||z|{{{|{{||||}}|{{|||{{{|{|{}|}{{|{||{||{{|{|||{{{|{{{{|||||{}{{{{{z{|z|{|{|}}||||~||{|{|}||{|}|{{|||{{|{||{|}|{|{{{{{{{|||{||}{{{{{zzz{{|{|{|{{{{{y{{z{{{{||{{{{|{{{z{|{z{{|||z{{{{zz{{{|z{{{z{{|zz{zz{{z|{|{{zzz{{{z{{{{{{{|{{zzzyz{{{z|{{{|{z{|zzzzz{{{{{{|{{{{{{zz{{{z|{|{|{{zzzz{zz{{{z{{{zz{{{{z{z{{{|{{{{z{z{zz{{{|{z{||{y{z{z|{zz{zz||{{{{z|{{{z|{{|{{{{zz{{{yzz|||{|{|zz{zz{{{{{{|{{|{|z|zz|z|||{{|z|||{{{{{{{|||{z|}}{{|z|{{|{{{|||}{{zz{{{{z{||{|{|{z{{{{{{{{{|{|{|}{{|{z|{||}|||||||z{{{z{{{|||{||||{||{{z{{z{{z|}||{|{{{{{|}{||||}|{{{|{{||{|}|||||{{{{{z{{zz||||||z{{{{{{{{||{|||{z|{zz{{{|{||}{|||}{}{|{{||{|}}||{{{|{z{||||{|{|||{{{{z{|{{{|||}}{|zzz{{|{{{{{|{|{|{{{{{|{||{{{{z{|{{{{z{{|{{{{{{z{{zzzz{z{{z|{{{{zz{{z{zzz|{{|{z{zzz{z{{|{z|z||{{{zy{z{z{{{{|{|zz{{zz{zzz{{{{{|zzzz{z{zz{{{zz{||{{{{z{zz||{{||{{{z{z|yz|{{|{{{|{{zz{z{{{{|{{z{||z{{{zzz|{{|{{{|{{{zz{{zz{{|{|{{{{{{z{{{{|{{||{{{{z{{zz{{{{|z{|{{{{{{{{{|z|{||||{{{{|{{{{{{|}{|{{{{z{{{{||{}{|||{{{{{{z{{|{}|}|}|{{z{{{{{|{}|||{{{{{{{|{|||{{||}|{|{z{{|{}|{}{|{{|{{{{{{|||||{||{z{{{{||||{||||}|{||{z{|||||||||{{{{z{{{{||||}|}{{z{{{{{|{|{z{|{{{{{{z{{z||{{}}}}{||||{{|||||}|{{{{|{{{||{|||||||{{{z{z{|{{{{{{|{z{zz{{{{z{{{|{|{z{zz{{y|{{||{{{{{{{z{{y|z{z{{|{{{z{zz{{|z{{{{{{{zzz{zz{|{z{{|{{zz{{z{zzz{{{{z{{{zzzz{zz|{{z{{{|||{zz{{yz{{{{{{{{{zz|{{zz{zzz{z{zzzyzz{z{{z{{{{z{{{{{z{z{{{|{|{||{zzz{{zz{{|{|{{{z{{{z{{{{{||{|{{zz||{{{{z|z{|||{{z{{z|z|||z{{{{{z{{{{z{||{{{||||{{{{{z{{||{|||||||{{{{z{{{||{|{z{{{|{{{{|{|{||{{{{{{{{|{{||{|{|{{{{{{{{|||||||{|{{{{{{{{|}|||}|{{{{{|{||}||}}}}|{{{{{{z||||||{{|zz{{{{{{||}||}|{|{{{{z|{||||||||||{{{z{|{}||{}|{z{{{{{z{|||{|{|{{}z{z|{z||||||}|}|||{{{|}|||||||{||{{{{{|{{||}}{{{{{{||}{{||{|||{|{z{y{{{||{z||{{zzzz{z||{}{{{{{{z{yzzzz{|{{{{|zz{{{|z{z{{z{|{{{{{z{z{{{|zz{|{{zzz{{yzz{||{{{{{z{zz{{{{z|{{|{|{{{{zz{zz|{{{||{{|||z{zzz{{z{{{{{zz{{{{z{z|{{{||{z{{{{z{z{{|{{{||{z{{{{{z{{|{{{|{{{||zz{z{{|{|{|z|{{zz{z{{{}z{|}{{zz{{{{{{{||{||{|{{{{{{z{|{|{||{{z{{z{{{{||{{||}{{{|{{{|{|||{{|{{{{{{{{{{{||{|{}{{{{{{{{{{|}||{||zz{|z{{|{|||||||{{{{||{{{|{|||||{{|{|{|||{{}|}||{{||z||{|~{|}{||zz{|{{|{|||{|}||{{||{{{|||||{{|{{|{{|{{|{{}||}}|{{|{|{z{}{|{{|||z{zzz{z{|{||~|{{||{{|z|{|||||}}||{{{|z{{{||{{{|{|z{{z{z{|{{{|}|{{z{z{{zz{{{{{|{{{{{{{{z|{{{z|{{{{{{zzyz{{{{{{|{|{{zzzzz{{{zy|{{|{{z{zzz|{{{{|{z{zzzzzzz{{{{{{{z{zzzzzz{{z{z{{|{z{{zzz{z{|{{{{||{zz{{zz{z{{z{{{|{{z{{{{zzz{zz{|{z{{zzzzzz{z|{|{{{z{{{z{z{{{{|{{|{{{zzz{{{{{|{{{|{{{|zz{z{{{{{{|||{z|zz{{{{{{{{|{{{{{zy|zz{{{{|||{z{{|{{{{{|||{{{{{{{{|z|{{|{||||{{{{|z|z||{}|||||||z|{zz{||{|{{||{{{|{{{{}{{|{{{{{z|{||{z|{||||||{z{{{z{{|{|||}{{{{|{{z|||||{||||{{{{{z{{|{{|{}||z{{|{{{{{|{}|}}{{z{z{zzz{|{|{|{|{zz{{{|{||{|||{|{zz{zzz|{|{{||}{{{{{{|{{||{|||}|{{|||{{{|{|}|||{{{{z{|{{|||{|}||z|{z{|{{|||{|{{{{{{{z{{{{{{{|{{|z{z{{{z{|z|{{{{|{z{z{{{{{|{z|{{{{{z{zz{|{{{{{|{z{z{{y|z{{{{z{{z|{{zz{z{{{||z{{{z{|{{{{{{|{||{||{{{{{z{z{{{{{|{{{{{z{{z{zz|{||{{{z|zz|{z{||{|{||{zzz{{z{{|{{{|{|{z{zzzz{{{{{z|{{{{{{{{{{{||{}{||z{{z{|{|z{||{|{|z|{{{|{{{{|||{|{{{|{{{{{|||{{{|||z|{||z{{{|{|||||||{{{{{||{||}|}|{{{|{{{||{|||||}{|z{{{{|}|{|||{{||{||{{{{|{|||~}{{{{{{{|}|||||||{|{{{{{||{{}{|||{{|z|{|||||}||}|{z{|{{||||}||}|{||y||{{{|{{||}}|{{{|{zz{|||{|}|{||z|||{{||{{||}|{{||{|{{|||||||{|{|{z{{|{|||||}|{z{|{{{{}|{{}{{|{{|{{{z{{{|{{|{{{{{zz{{{||{{|{|{{{|z|{z{||{{{|z{{{{zzzz{{|{{|{{{|{{{{zz{{z|{}z|z{{z|z||{|{z{{|{{{{zzzzz{{{z|{{{{zzzzzzz|{{{{{{z{{{zzz{{{{z{{|{{{z{{{{yzz{z{z||{{zy{z{{z{{z{{{{|zz{{|zz{{{{{{|||{z{{zz{{{||{{||{{z{zz{|z||{||{{}{{{{{z|{{|{|{}}{{{zz{{{{|||{{|}|{zz{{zz{{||||{|{||{{z{y{{||}|{||{{||{{|{|||{{{}|||{{{{{z{|{|||}||{{{|z{z|}|{{}|||{|z{|{{{|{||||||{{{|{{{|}||||}|{{||{z|{{{|}|{|}|{{{|{||{{|{|}||z{{||{{|{|||||||z{z{{{{|{{{|||||||{{{{|{{|||{|||{{{{{{z{|||{|}{|z|z|{{{|z|{{}|{||{{|{{{{|{|{{|z|||{z{{zz{||{|{||{{zz|zzz{{|{z{{z{{{zzzyz{|||{}{|z{yzy{{z{{{z|{|{|{{z{{zz{||{{|zz{{{z{{yzz{{z{{|{zz{zzy{z{{{{|{|zzz{yzzz{{{|{{{{{{z{{zzzzz{z|z{|||zz{{zzyz{|z{{{{z{zzzzzzz{{{{{{{zy{zzzzzz{{{{{|z{zzy{z{z{{{{{|{{{zzzzzzz||zz|{{|z{{{{zz{z{{|{{|{{{|{z{zyz|{{{||{|zzzz{z|||||{z|{{z{{zz{z{||{z|||{{|zz{z{{||||{}||z{{|z{z{|||{|||{{{{z{z{{||||{|{|{z{{z{z|{||{||{|z{z{{{{{|{|||{||{{{z{|z||||{{{|{{{{{||{||{||{{|||{{{{z{|||||{||{{z{|{{|{{|||{||{zzz{z{{|||z{{||{{z{{{|{{{{}{{||z{{z{z{{|||{||||{}{|{{{{||}||{|}{||{zz{{{{|{||~{|{z{{{{{|{{|{{}|{{{z{{z{{|||{||{{{z{zz{z{{|{{|{|{z{{{z{z{|{z{{|{z{{zzyzz{{{{z||{{{|zz{z{{{|{{{||{zzzzz{z||{{{{{{{zzzy{z{{|||{{z{{z{zzz{|{||{{|||{{zzzz{{{{{z{{{{{{{zzz{zz{z{|{{{{z{zy{{{{{{{{||{{{{y|z{zzz|z|{{{{{zzzz{{|{{|{{{|{zz{zz{{z{|{|{{|{|{z{y{{{||}{{{{|{{|z{{z{|{{{{||{y{z{|z{{|{|{{||{|{{{{{{|||{|{||z||{|||z{{|||{||{{|{{{{{{||||{|||z{z|{{||{|{|||||{|{{{{{|||{|{|}{{{{z|{|{}||}|{|||{||z|||{{{||{|}|{{|{{{{|||||{{{|{|{{{|{|}||{|}{|zz{|{{||{|{{|{{{}||{{{z|}{{|||{{{|{z{z|{|{|}}|{|z{z|{z||{||||{||{{|{{{|{|{{||||{z{{{{{{|{|}{||{z{z{z{{{{{{{{|{|{|{zz{{||{}|{{|z{{{z{{{{z{z{{|z|z|zz{zz{{{z{{|{|zz{z{{z{z{{{{{{z{{z|zzz{zz{{{|{zyz{zzz{{z{{|{{{{{{{zy{z{z||{{{|{{zzzz{z|{{{|{|z{zzzz{{zzz{{z{|{{{z{{|zz{{{|y{|||{zyzz|y{|{||{|}{{{zzz{{{{z{||~}z|z{zz{z|{|{{{|{{zzzzzzz{|{{{|{{|{{{{|{z|{||z|||{{{|{|{{{|{{{}{{{{z{{{{{{{}|||||{{{z{|{{}{{|||}|{|{{{z{||||{|||{|z{z{{{z||{{z}||{{}{|{}{z||{|}}||z{{{||{{}|||||||{{{{{{{}}{|{||{{{{{|{||{||{{||}|||z{|{{{|||{}||z{z{{z|{|{||||||{{{|{z{{{{{|{{{|{{{{zzz{{{|{||||{{{{{{zz|||{}{}||{{{z{{z|||{||}|{|{{{{{{|{z{{|||||z{{zzzz{{|{z|{|{{{z{zz{{z{|{{{z{{y{|zz{{zz{{|{{zz{|zz{{|{{{{{|{z{zy|z{{z|{{{{{{z{{zz{{{{{{{{{|{{{z{zz{|{z{{{{|zz{zz{zz{{{z|z||{zzzzz{zz|{z|{{|{{{yzzzz{{{{{|{z{z{z{z{y{|{{{||{|{{{{z{zz{{{|{z|z{z{zz{z|{z{|{z|{{zz{{zzz{{z{|||{{{{{z{z{{|{{||{{zzz{{z{{{|||||{{{{z{|z{|{{z{{{{{{{{{{zz||||||{|{{{{z{||{||{{{|||{{{{{z{{|z||{|z{{{zz{zz|{{|{||||{{{}{|{|{|{||||{{{{{{{{{|||{||||{|{{{z{{|||{||{|{{z{z|||{{|{|{|{z{|||{z|{|||{||{{zzz{{{|{{|||}{|{z{||zz{|||{{{}|y|{z{{y{{||{|||{||z{zz{{z|||{|{{{||{{{|{{|{}|}|{|{{{{|{|z{z||||{{{{zz{{|{{|z{||{|z{z{{y{||{{|z|{y{{{{zz|{|{{{||{{{{z{z{{||z{{{{z{{zzz{y|{{{{|z|{zz{{{{{{{|||{{|{{{{{{y{{{{||||{z{{{z{z|{|{|{{{z{zzz{zzz{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{zz{||{|||||{z{{{{|{{|||||{{{{zz{z{{{{{{{|}{zz{zzz{{{|}z|||z{{zzz{z{|{{{||||||y{yz{{|{z{|{|{z{z{{{{|{{|z|||{{z|zz{z{|z{{{|{{zzz{zyz|{{|{{{|{{{zz{{{z{z|zz|{{z{{{{z{{{z{{z{|zz{z{y{z{|z{{{{{{yzzz{zz|{{{{{}{{{{z{zz{z{|z{||||zzz{{{{z|{|{||{{zz{{{|{{|{||{{|{|{z{z{{{{|{|||{|z{z|z{{||{|{||{{{{{{|||{||{z|{|{{{{||{{|}||{|}}{|z{{{|{{||||}||{{||{|{|{}|||{||{{{zzz{z||}{|}|||{{{z|{{{{{{||{{|{{||{{{|{{||||}{{|{|zz{|{{||||{{{{{{{|z||{{|}|}{{{{||||}|{|}}|||{{{|z{z{{|||}||||{{{{{z{{||}||{|z{{{zzz||{{||{||{|{|{{||{|{{{||{{|{{z{{{|||{||}{{{{z|zz{{{|{||{{|{{{z{{{||{|{|||{{zz{{z{{{|{||z{{{{z{{{{||{{|}{|zzz{zyzz|||z{{{zzzzz|z|{{{{|{|{zzzzzz{z{{{|z|{{{{{zyz{z{z{z{|{z||{zzzzz{{{{{|{|{zz{{z{zy||{{|{|{zzz{zzzz{{{{|z{z{zyy{z{|{{{{||||{{z{z{{z{z{{|{{{z{z{z{z{{|{|}}|{{zzz{{z{|{||{{|{{{{z{{{{{{{{{|{{{{{{z{{||{{{|||{{z{{{{{||{{{{|{{{{{|{{{|{||||||z{{{{|{{{|{|{|||||||{{{z||{||||||{{{{{{{||}|||||{||{{|{|{|||||||||{{||{zz||}|||}{|{{{z{|||||{|}||{||||{{{|{{||{}|{{|{|{{}|{|||||{||z|{{{{z||{|}||{{{z{{{{||||{{{{{|z{{{z{{|{{|}{{z{||{{{{|}{||||{{|{{z{{{|{|{{{{|{{{z{{z{||{|{z{{{{{|z{yz{{{{||{zz{{z||z{{|{{{||zz{zzz{{{{|{z|||yy{zz{zz{{{zz|{{{z{yz{{z{{z{{{{{zzz{zzzzz{|{{{z{zz{zzz{z{|{{{|{{{{zzz{z{{z{{{{{|{z{{zyzz{z{{{|{{{{{zz{z{{{{y{|{zz{{z{|z{z|{z{{|{|z{y{z{{{{{{|{||{z{{zz{zz{z{||{|{z{{z{{z|{|{z{|{{{{{{z{{{||{{{{{{|z{zzz{{||||||{{z{{z{{z{|{{{{{{|{{{{|{{|{{|||||{{{|{{{z{{}|{||||{{{{{z{{|{{|{|}{{z{{{z|{||{{||z{z{{||{{{|||{|||||{|{{z{{}}||{||{{|{{z{|{{|{}|}{{{{|z{{{{{{||{{}{{{|||{{{|{{||||||{z|{z{{{|||||{||{{{z|{{{|{|{|||z{{{z{z|{{{|||}|{|z{z|{z||{|{||z|{{z{{{{}||{|{{{{{{{{z{|{|{|{|{|z{{{z{|{{|{{|{{{{{zzzy{{|||{{{{}{{zz{{{||z|{{|{{z{{{z{{z{|{||{{{z{zz{zzz{z|{{{|zzz{{zzz{z{z{|z{z{zzzzzzyz|{{|{{{{{z{z{zzz|{{{|{{z{zzzzzzz{z{z{{{z{zz{z{z{{{z|{{{{{zz{yz{{{{{{{|{{yzzz{{{{{z|{{{{zzz{zzz{{{{{{{|z{|zzzz{{{|}|||{{z{z{z{z{{|{{{|{z{{{zz{{z{|z|{{||z{{{{{{{|{{{{||z{{{{zz|{{{{||{|{|{z{{|{{||||||{{|{{{{{{z|{{||{|}{{{|{{{{||z|||{{{z{{|||{|||||{{|{{{{{{{||||||||{zz{z{z|}||{|{}|{{{z{z{{{{{{}|}||{z{||{{|||||{{||z|{{|{||{{|||{||{{z{{{{|||||{}|{{{z{z|z{{{{{|}{z{{{{{{{{|}||{{|{{zzz{zz{|||{|{||z{z{zzz||{{{||{|{{{{{{z|{{|{{|{|{{zz{zy{z{||{|{{y{{{z{{{{{{{||||z{{z{z{z{|{z{{{{z{zzz{z{{z|{{{{z{{z{yzz{{{{{|{z|{{{zzz{{{{{|zz{{zzzz{zz{{{|{|{{{zz{z{|z{{{{{|{{{{zz{yz{z{z{{z{z{zzz{z{{{|{{{||{{{{z{{zz{||{{z{||{z{{{zz{{{z{|||{{{z{{{z{|{{|{||{z|{{zzz|{{{{||{{z{{zz{{{{|{{||||zz{{z{{{||z{|{{{{{{|{z{||{|||{{|{{{z{{{{|{||}|}|||{{{{{{|}||}||{{{||{{|||||||}}|||z||{|||||{}||||{{{|{{|}|}||{}|{{{||||}{{||||||{{z{{{{||{{}{}{|{{{{{{{|||}{|{|||{{|{{|{||{||}||||{{|{{||{|{|{||||{z{{{|||{||{{{|{|{{{{{{}{|}|{{{{{{z{{{||{{{|||{zz|{{{{{{{{||{|{{z{{{z|{{{{{||{{{z{zzy{{{{{|||{{{zz{{z||{|{|{|{z{{y{yz{{{{{||{zzzzz{zz|{{|z{z{zzzzz{zzzz{{{||{{{{{y{z{z{{|{z|z{{{zzzyz{{zz|{|{{z{zzz{zz{z{{{{{{zzy{y{{z{{{{{{{zzzz{{zz{{|{{{||{z{z{z{zz|{|{|{{{zz{{{z{{{z{|{||y{|{z{zy{|||{{{||z{{zzzzz|||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{{|zzz{|||{{{{{|{|z{{z{{{{{||{{|{zz{|zz{|||{{|{{{{{zzzz{{{z{{{|{zz{{zz{z|z{{|{z{z{zz{{{{z{z{}zzz{zzzyz{{|z{{|{zzzzz{zz{{{|z{||{zz{zzzzz{zz{|{|zyzz{zz{z|{{{||{zzz{{zzzz{{z{{|{{zzz{yzz{|{{z{||z{{{z{{{{{|{{{{{{z|{z{zzz{|z||||zz{{{{zz{{{||||{{{{{{{|{{{||{{||zz{{{{{{{|{{||{{||{|{{{{z|||||}|{||{{||{||||||{|{{{{{{{{||||{}|}|{{{|z|{||||||}|{{{{{||{z||{|||||{{|{{{{|}||||}}||{{z|{z{||{{}}|{z|{|{z{|{{|||||{{|{|{{{{|{||{|{{|{{{{{{{||{|||||{{{z{||{||{{|||{{{||{{{{{{{{{{}{{|{|{|{{||{|{||{|{{{{{||||{|}||{||zz{|{|{{||||{{{{{{zz{{{|{{{|||{{{{|zz{|{|{|{|{{{z{z{zz{|{{|{{z{{z{z{zz{|{{|{{{|{z{{{{{{|{|{||{{{z{z{{{{{{{|{|z{{{{zz{{||{|{{{{{{zzzzz{||{z|||{{{z{z|zz|{zz{{z|{z{{{z{z|{{z|{|z{{{{{{z{{{||{{|{{z{|z{zz{|{|{{{{{z{{|{|{|{{{|}|{{zzz{{{{{||{{|{{z{{{z{zz}{}|}||{{{{{{{{{{||{|}|{|{zzz{{||{{||}}{{{{{{{{||}|||{|{|{{{{{|{||}|}}{|{{|{{|{{}|||||||{z{zz{{|}{|}|||||{{{|||{||||}|||{{{{{|{}}||{|}||{z|||{{}}}||||||z{{{{{||{{{}|||||{{|{{{{|}||}|||{|{{{{{{{{|||}}{|{z|{{{|||{|||||{||{{{{{{}||{|{|zz{|{{{{{}|{}{|{{{{|yzz{|{{|{|{{|z{{{{{|{{{{}||{{{{{{z{{z||{{{{z{{zzzzzzz|{{|{|{{{zz{{zz|{{{{|z{{z{y{zz{{{z{{|{{{z{z{{{z{z{{{{{{{zyzzz{{|{|{{|zz{{zyzyz|z{{{|{{zz{{zyzz{{{{{{{{{z{{{zzy{{{{{{{z{{{zzz{zz{{{{{{{z{{{z{yz{|{|{||{{zzzyz{z{z{{{{|{{{{zzz{{{{{{y{{|{{{z{z|zz|{{{z||{{{{{zz{z{{|{||{{{{{{{z|{|||{{||{zz{|z{|{||z||}{{z|z|{{{{|{|{|||z{||z{|{{{||{||||{{{{z|z{|||{||||{|z{{z{{}{||}|}{z{z{||{|||{{}||}{{|{{|{||||||||{{|{{z{|||{|{|||{{{{|z{{{|||{{|}|||||z{{{{{|{||}{|{{{{|{{|z{|||{{{{{{||{{|||{|{|z{{{zz{{{||{{||{{{z|{zzz{{|{{|||{{{z{yz|{{|{{|||{z{z|{{z{{{{{|||{{{{zz{{{z|{|{{{{{zyzzzz|{{z|{||{zz{z{{zz|{zz{{{{{{{{{{z{z{{{|{z{{zzzzzzz{{{{|{{zzzzzz{{z|{z{z{zzzzzy{zz{{{z{|{{{z{{{zzz{|{|{{{{zzz{{{{yzz{{{|z{z|{zzzzzz|z{z{{|z{{zzzzz|z{z{{{{{zz{zzzzz{|z{{{{{z{{zzz{{{{{{{|{{z{z{{zzz{{{{{|{{{zzzz{z{{{{{|{{zz{zzzzz|||{{||||{{{{z{|{}|z||||z{{z{{z||{|{||{|{{|{{z{{{|{|z|{||{{|z{z{||||{{}{{z{{{{{|{|{|{||{{|{{z{{{{|||{||||{{{{{z{|||{|{||||{|z{{|||{|{|{|||{{|z{{||{|||}}|{{{{{|{||||}|||z{{{{||z{{||||{{{{|{z{||{}{|{{{|{zzy{zzz|{|{{{{{|{z{{{{z{||{{{}{{{{z{z{z}{{|{{|||{{zy{{{{z{|z|||{{{z{z{{{{{{{{|{{{{zy{z{{{|{|{{|z{z{zzzz{{|{z}{z{zzz{{z{{{{{{{{z{zz{{|z{{|{{zz|{z{{{z{z{z{|z{{}z{{z{zz{z{{{|{{{{{{{zz{zz{|{{{{||{z{zzy{zy{{{{{z{{{zzzzzz{|z{{{{{|zz{zzzz{{{{{{}|{{z{{zzz{|{{{{|{{|{zz{{{{{{{{{||{z{yzzz{{||{||||z{{z{z{{{|{{{{|{{{zz{{zz|{|{{||{|{{{zyz{|{|{|{{{|{{z{{{{{{|}||}|{{|{{{z{||{|{|}|{{|{z|{z{|{||||{{z{z{|{{|||{||}{|{{||{{{{|{|{|}}|{{{{{{{{}||{|}||z{|{{z{|{||||}{|{{{|{{{{|||{}}}||{||{z|}{|{{||{|{z{{{z{{|{{|{{{|{{|{{{{{||}|~|{|{|z{{{z{{{y{|{{{{{{|{|z{{||{||{|{{{z||z|{|{{|}|{|{zz{{{{{|{|||||{{{z{zz{z||{|||{z{{zz|{{{{{{{{|z{{z|{z{{||{{{|z{z{|{{zz{z{{{{{z{{{{y{{{z{{|{z{|zzz{z|{{{|{{{{|{{zz{{zzz{{{z{{{{z{{{zzz{z{z|z{{{zzz{zz{zz{|{{{|{{{{y{zzzz|{{{|z{{zz{{|{z|{|{{{|{{{z{{zz{z{|{||{|zz|y{z{z{{{{{|{|z{{zzz{z{|{|{||z{z{z{z{{z{||{{{{|{{{zz{z||{{{||{|{z{{{{{{||{{||{{zzz{|{|{{|{|||{{{|{|{{{||{|{|{|{|{{{{z{||{{{||||{|{{{|{||{||}{|{{{{{||{{|||{}||{{{|{{zz|}}|||}||{{|{zzz|{||{||{|{{y|{{{{|{{{||||{{|{{z|{|}{|{||{|{z|{{{{{{{{{}|{{{{{z{{{z{|{z|{{{{{{z{z|{|{{{{{{{z{{zz{{|||{{z||{{{{zz{|{|{{|||{{zy{{{{zz{{{|{|{zz{{{{{|{{{{{||{{{zyz{z{{{{{{{|{zzz|z{zz{{{{{{{zz{zz{{{z|{{{z{{zzzz{{{{{z{{{{{|zzyzzz{{{zz{{{{{{zzyz{zz{{{{{{{{z{|{zzy{{{{{{{|{{{zz{yz{{{{z|zzz{{{z{zz{z{{{{{zzzz{yz{zz||z|{|||z{{z|{zz{z{{{{||{z{z{zzz|z{{{z{|zz{zz{{{|{{z{{{{{zz{{z|z{||{{|{{zz{{zzz{{{{{{|{z{z{{z{zz{{{{{{{{{z{z{{zz{{||{|||{z|{{{|{|{||{}{}{{{{{zzz{||||||{|z{{{zzz{}|{||{|{{{{z|{{{}|||}|||{z{|{|z|~{{|||||{|zz{z{{{{||||}|z{{{zz{{{{}|{|||{z{{|z{{|||||||{zz{||{{z{{{|{||{{{{{{{z||{||{||{{{z{zzz{{|{{{{||y{{{z{{{{|||z|{{|{{{{z{|{{{||{{z{{z{z{z|{{{{|||{{{zz{y{||{{z{|{{{{zz{zz{{{|{{||zzz{zzzzz|{{z||{{{zz{z{z{{{zz|{{z{zz{{{{{|{{zz{{{{zzzzy{{{{{{z|zzz{{z{zz{{|{{{|{z{zyyzz{{{{zz{{|zz{z{yzy{{{{{{{{{z{z{zzzyz{|z{{|z{z{zzyz{{{{z||zzzz{{y{{|{{{{{{{{{{{z{{{{{z{{{{|z{{{z{zz{{{{{{|{{|{{{{z{{|{{{{{{{z|{{{z{{{{|{{|{{{{{{z{z{{{{{|{|{{{{{z{{{|||{{|{{{zz{{|{||{|||||{zz{z{{{||{{||}||{{|{{|z|||{{}|{|z{{z|{|{z{|{}{{|z{{{|{{|}||||}||{{{zz{{{{|||||}||{z{zz{{{|||||}|{{|{z{{{|||||||{{{{{z{{{}{|{|{}{{{{{{{z{|{|{{||{z{{z{{{{{{|||||{{{z{{{z{|{|{{||z{zzzzzz{{||{||{{{{{z{{z{{|||z||z{zz|{zzz{{z{{|||z{zzz{z{{|{{|{|zz{{z{{zz{z{z{|{{{|y{zy{z{{{{{|{zz{zzzzz{{{|z{{|{{zy{y{{{z{{{{|z{zzzzz{z{{{z{||{zz{yzzzz|{|z{{||{z{z{zzzz{zz|{{{|zzz{{{z{{z{{{zzzzzz{{zzz{|{{{||zzzz{zz{{z{{{z||{{{{{z{{{{{{||{{zz{z{z{{{|{|{{|{{{z{{z{y{|||{|{{{zzz{zz{||{z{z|||{{{y{{{{|{zz{{{{{z{z{{{|{{||{{{{{|{|{|{||{{|{||{{{{zzz{z|||||{|{z{z{{{{|||||{|}|z{|z{|{{||{{{||{{{|z}{{{}|}|||||z||{{{|{{|||{{|{|{{|{{{||{||||}|{{{|{{z{||{||||{{{{{{|{{{{{|||}{{z{{{{{{{||||{{{{{{z{{{|||{||{|zzzy{z{z{{||{{|||{z{{zzz{{|{{||||{{{{z{{z{{{|{|||{{z{|zzz{{{z{{|{{zzyzzz{{{{{{z||{{z{zzz{{{{|{|{{{z{{z{{z{{z{|{zz{{zz{{{{z{|{{{{{zzzz{z{{{{{{|{{zz{zzzzzz{{zz{{{{zz{yzzz{{z|z{{|{y{{zzz{zz{zz{||{{zz{yyzz{{z{|{|zzz|z{z{{{{{{{{{{z{z{zzz{|zzz{||z{zzzzzz{{{{{zz|zz{{zzzz{{|{z}{|{{z{zz{z{|{{||{{{z{{{zzy|{|{{{||{|{{{z{{{{|{{{|zz{z|{|{{{{{}{{|{zz{{||{{z|{|{|||{z{{{{{z||{|{}{{|z{{{{{{|||{{|}{|z{{{|}{{|{||||||z|||{{|{}{||{|{{{{|{z{z|}{{{|}|{z{{{z{{|{{||{||||{{|{z{{||{{{}{|{}z|{{z|||{{}||||z{{{z{||||{||z{{{{z{{y{{{|{|{{|{z{{zz{|{{{|{{{{{{{{{{{|}{{|{|}{{{{{z{z|{{}|{|{{y{{{zz{|{{{{{|{|z{zzz{z{z|{{{z{{zz{z{{z|{{{{{|{z{z{{z{z{|{{{|{|{zzzzzz{z{{{{{|{zz{{zyz{z{|{{{{{zzzzzy{zz{|||{z|z{zzy{z{zz{{{{{{{z{{{zz{z{{z{z{{zzzyz{{zz{{z{{{zzz{y{zzz{z{{{{{{{{zz{{{z||{z{{{|zz{yzz{z{{z{|{{|{{{{zzzz{{z{{{{|z{z{{zzz{}|z{{{|{{{{z|zz{{{{{|{{{{{{{z{zz|{{z|{||{{{{z{{{{||||{}z{{|{{{{||||{|||{{||z{{{||{{|{||{{|z{{{|{||{}||}zzz{z{{{|||{|||||z||z{{{{||}{||}}{||z{{{{|||||||{zz|{{{{}|{|{||}{{{{|{{|||{|||{|{|{{{{z{{{|}||{{z{z{|z|{{|{{{||{{{{{{y{z||{|||{|||{{{z{{{{||{|||{{{yz{{{|{|||||{|{|{{{z{{{|||{{{z{{{{zzz||{{{z{{{zzzzz{{z{{z{||{{{{{z|z{z{|z|z|{{zzzz|z{{{|{{{{{{{z{zzz{{{z|{{||z{z{{{zyz{{|zz{|{zzzz{yz{z{{|{||zz|{zz{{{{{|{{{{{{z{zzz{y{|{{|{{z{z{zyzz{|{y{|{}{zzz{{yz{{|{|{|{z{{zzz{z{|z|{{||z{z{{z{{{{{{|}{|{{zz{{{{{|{|{|||z{zz{z{z{||{||||{{{z{{zz|{|{{|{{{{|{|{zz{}|{{|{{|{{{{|{|{|{}||||{{{{{{|{|{||||}||{z{{{{{{||{|||}|{{{{{|{||{{{{||||{|{{{{|{||||||||{{{|{z{}}|}|}|}{{{{{{{|||{{||||z{{{{||{|}|{|}|||{{|{{|||||||||{{{{|{{|{|{||||}|{z|zz{{|}{|||||{{{{|zzz{{|||{{|{{{||zz{z{||{{}|{{zzzyz{{||{{{{{{{{zz|z{{{{|z|{{{{{z{z{z{{{{{|{|zzzzz{{y{z|{{{z{z{{{{{{zz{{{|z|{{{{{zzzz{{|z{{{{yzzzz{zy{{{{z{{zz{{{zyzy{{|{z{|{{zz{zzzzz{|{{{{{{{{{zzzz{{{|{{{{z{{{{y{z{{{{{|{|{{zzzyz{z|{{|{{{{{{z{z{z{|{{{{{|{{{{{yzy|{{{{{{{z{{z{zz{{zz{z{||z{{{zzz{{{|{|{{{{{{{{z{{{{{{|||{|zz{{z{{{|{||{|{{||{z{{{{|{{z{{|{{z{{z|{|{{{{}||{|{{{{{{||{||{||z{{{|{|z|{{||||{|z{{{z|{|}||{}|}||{z{{{{{|||||{{|{z{{{{||}|}||}}}{{{{z|{{|{||{|{|z{{{{{||{{{{{|||{z{{{y|||{{}||{z{{{{{z{{||{{|||{{{{{{zz{{{{|{{{zz{z{{{y||{|z|z{{z|zz{{z{{|{{||{{{zz{{zy{{|{{|||{{{{z{|{{|{{{|{{{zz{z{zzz||{{{||z{zz{zzzzz{{{{{zz|zzz{zzz{{zz{||{zz{zz{{z{{{z{{{{{zzz{zz{{z{{{{{{zyzzz{zz{{{{{{{{zyzz{zz{|{{{{{{zy{{z{zz{|{z{{{{zz{zzzzz{{{{z{{|{zyyzzz{z{zzz|z{{{{{y{z{{{{z{zz|zz{{zz{z{z{z{|{{{zzzzzzz{{{{||||{zz{zz{{{z{{|{{{{{{z{zz{{{|{{{|{{{z{zzzz|{||{|{{{{{zzzz{||{{||{{{{z{{zz{{||{|{||{{{{zz{z{{{||{||{||{{{zz|}|||{|{|z{zz{{z||{{}{{||z|{{}{{{|{{{{||{z{z{{{z{||||{|||{||{z|{{|||{|{|{z{{|{{{{{{{{{|{{{{{{{{{{{{|||{{{{{{{zzz{{{|{|{|{|{|{z{{{}{{{{{{{{{z{{{z{{|{{{{{{z|{{zz{{z}zz{||{z{{zz{{z{}{{||{{{{zzzy{||{{||{|z{{{zzz{{||z{|{|{zzzzzzz{{||||{|z{zzzzz{{{z{|{|{{{zy{|z{{z{{{{{{{zzz{zz{{{y|z{{{{zzyzzzz{z{{z{|{zzz{z{zz{{|{{{z{{z{{zz{z{{z|{{|||{z{zz{zz{{z{z{{{{{z{{zzz{z{{z{{{zz{z{{z|{|{{{{{{{|zzz{z{{{{{|{|{zzz{{|zz{{{{{{{{{{{zz{z|{{{{{||z{z{zzz{{{{{{|{|{{z{{z{z{||{{||{{zz{{{{{z|{{{||{|{{z{{{|{{|{|{||zz|z{z{{|}||{||{{|{{zzzz{|}||||||z|z{{{{{|}{{||||{{{{{{|{|||{||}|{{{{{{|{}{||||||{||{z{{|}|||||{{{{{|z{||{z||{|||{z{{{|{{|{{|{||{||{{{z{{||{{|||{{{z{||z{||||{||{{|zz{z|{||z{|{||||{z{|{{{{{{||z{{{z{z|z|{||{|{}|{{{z{{{{z{{{||}zz{{z{z{z{||{{{{|{{{z{zz{z|{||{{{{{{{z{z{||{{{|{|{{z{z{zz{|{z|{{z{zzz{y{|{|{{|{|{z{zz{{zz{||{{{{zz{z{{zzz|{z|{{{zzzz{z{zy{}z{{|{{z{zz{{zz{{{{{z|{z{zzz{z{{{{{{{{yz{|{{{|{|{z{{{{zz{z{zzz{|{z{{{{{{{z{{{zz{||||{{{{{z{{{{{z{z{{|{{zz{{z{{{|{|||z{|{z{{{z{|{|z||{z{{{{z{{{{||{{|||{{{{{{{{||{||||{{{{{{|{{{{{|}||}|{{{{|{{|{}|{||{|{{{{{{{}{{z{}||{{{z|{{||}|{|||}}{||{|{{{~}|}|||}{{|{{||||{||||||{||{z{|{|||||}||{{||z{||{|{{||||||z{{|||{}{||}|{|||{{{z{{|{||}|{{|{{z{z{||z|{||{|{z{{zz{|||{{|||{z|zz{{|{{{||{||{z{z{{zz{{{||}{{z{{{{{z{|||{{{|{zzy|{z{{{{{{|{|z{{zzz{z{{z{z|{{{zzz{zz{{{|zz|z|{z{zzz{{{zz{|{{|zzzzzz{z{||{{|{{zzzzzzyz{{{{{|{|zz{zzzzz{{{{{{|{{{{z{zzy{{zz{z|{z{|zzz{z{{zzz{z{{yzzz{|y{z{{{{{{{{zz{zz{{{{{z{|{{z{{zzzz{{{||{|{z{{{zzzz{zz{{||{{{{z{zzz{}z{{{{z{{{y{{{z|{|{z||{{z{{{{{{{{{{|{|{{{|{{zz{z{{{|{||{{|z{{|z{{||{{||{{{{z{{||{|{|{|{{{|{zz|z}|{|||||z{|{{{{|||{{||}||{{{z|{{|{|{||}|}{|{{||{|||{|||{{z|z|{|{|{}{|{}|{{{{{{{{{||{{|{|{{{{{zzz{|{{{|||{z{{{zz{||{|{{|{{z|{|z{{{{|z|}{{{z{{{zz{{|{{{{||{{z{z{{z{{{||||||zzzzzzz{{|z|{}|{|{{{zz{{{||{||{{{zzz{{z{{z|{{{|{{zzz{{z{||{{{{|{|{z{{zz{{|z{{z{{z{zz{zz{z{{{{{{{{z{z{y{{z{z{}z{{{{{zzy{z{{{{{{{z{|zzz{{z{{{{{|{{z{z{zzxzz{zz{zzy{{zzy{zz{z{z{{{{z{zz{zz{zz{z{{{{z{z{zzz{{{{{{{{{zzzzzzzzz{{{{{{zzz{{{zzzz{z||{{|{{zz{|{{|{{|||{{{{z|zzy{{|{{z|{|{{{{zz{{|{{z{|{{{{z|{{z{{|||{{|{{|{{{{{{{{|{||{{{z{z{y{||}}{|{|{{{{{{{{|||||}||{{|z{z||{{{{||||}{|{{{{|z{{{|{|||z{{{z||||{||||{|{{{{||{|{{{||}||{z{|{{|{||||||}|{{z{{z|{||{{{|{|{zz{{{z{|{{{|}|{{{z{z{{}||{{|{{z{zzzz{|{{{{{{||{{zzz{{z{{{{{{{|{{{{z{{{{||{{|||{{|z{zzz{{|{{{{|{{{z{zz{|{{{{{{|{z{zzzzy{|{{z|{{{z{{zzz{{{{y|{{{{zzzzz{zz|{{{{{{zzyzz{{{zz{zz{|{zzzzz{zzz{{z{{|{{{z{zzzyz{zzz|||zzz{zzzz{{{{{{{{z{{zy{{zz{{|z{{{zyzzzzzz{{{{{{{{zzy{zz{{|z{{{|||zzzzzzz|z|{{{|{|z{{z{{{{{||{{|||{{{z{z{{z{{|{|{|{zzzzzz{{|}|{{|{{z{|z{{{||||{{z{{{{{{{{{|||{{{||{{z{|{{{z{{|||}}{z|z{zzz|{{z|{|{{z{{{{{{{||{||||{{{z{||{{{{{|||}{{{|{{{||||{|}|||{{{{{{{{{{|}||z{{{z{{{{{|{{{|||{{z|{{{{|||||||||{{z{{{{||z{{z|}|{{{z{{z{{|{{|{{{{{y|y{z|{{|{{|{{{z{z{{{{{{{{{||{zz{z{{|{||{||{{{{{{zzz{{{|{|{|{{z{zz|{{{{}|{{|{{{|z{z{z{{|{{{{||{z{z{{zz||||{||{z{z{{z{{{{{zz{{{zzzz{zz{z{{{{||{{{{zzzz{{{|{{z{{yzz{{zz{{{{z{{{zzz{zzzz{{|{{{|{zzz{zz{zz{{{z{{{zzz{zzz{zz{z||{{{y{z{{{z{{z{{{{|{{{zz{zz{{z{{{{{zzz{zz{z||{z|||{{zzz{z{{|{{{{|{|{{{z{z{{{z||z|{{|{{zzzz{{||{{{|{|||{{zz{{|{z{{{{{{{{||z{|{{|||||{{{{|{|{{{{|||||{|{{|z{{||||{||{{{|{{{{z|||{||}|{{|{{|{{|{|||||}|{z{{|{{{}||{}|||{{|{{{{|{|{{{|||{{{||{{|||{||{|||{|{{{{{|{|}|||{{{zz{{{{|{|{|||{|zz{{{|{|||{}{{{z|z{z{{{z{{{||{|{{zz{zzz{{{|{z|{{zz{z{{{{{{||||z{yy{{{y{|{||||{{z{z{zz|{{{{{z{|{zyzzz{z||{|{|z{{z|zzzzy{{|{z{{{{{{zz{zz{{|{{{{{{zzzzyzz|z{{{{{{z{zzy{zz{{|{zz{zzzzzz{{yz{|z{|{{zz{zyzzz{{{{{{|zzyzzzzz{zzzz{{{{{{{zzzzy{{||z{|{{zzzzz{zz{zz|z||zzzz{yz{{{z{{|{{{z{zzz{zz{{{{||{{z|{{zz{{z{z{|{|z{{{z{{zz{{{{||||{{zz{z{|{|{{|}|{|zz{{{z{|{{|{{{{{z{{{{{|{||||||{|{zzz{z{|||{|{|{z{{zzz{{z}||{{{{z{{{z{{||{{|{|{{z|{z|{|{||{{}|||{{{|{|{|||||||{|{||{z{{|||{||||z{{{|{{|{{z||}{{||z{{{{{{|{{||{{z{{{z{{z{{|{{|{{|{z{z{{z{|{|z{}{{z{{{zzzz{||z|{{{{z{{{|z|{|{|{{||{z{{{{{||{|{|||{z|{{{{z{{{||{||{{z{{zzzz{|zz{||z{zyz{z{||z|{{{||z{z{z{z{|{{{{|z|{zzzzz{{{|{z|{{{z{{{{{{z{z{{{{|zz{z{z{z{{{z{{{{{z{{zzz{{{{z{{{{{|{zyzz{z{{|{{z|{{{zz{{yz|{{{{{|{{{zzzz{z|z||{z{{zz{{{{{z{|{z{|{{zzyzzzzz{||{z{{{{||zzz{|{z|{|{{{{{z{{zz{|{{{||}{{zz{z{{{|||||{||{|{{{z{{||{{{|{{{{z|zz{{|{{||||||{{{{{|{{|{{{}{{{{{|{|{||{}}{|}{{{{zzzz{|||}|{|}{{||zz|{{{|{|||||{{{{||{}{||{|||{|{{|{||||}|}}}|{{{{{|{||}{|||||{|{{{{{|||{||}|||||{{|z|{{}|||}{{|{{{|{||}{}||||{{{zz{{|||{||{||{|{zz{{{||{|||{zzz{z{{zz|{{{{|{{{{{zz{{{z||{|||{{zzz{{{{{{{{z{||z|z{{zzz{{{{{|{{{z{z|{{z{{{|{{|{{z{{{zzz|{{{z{{zz{{|zzy{{{{{{|{{{z{z{zz{{{{{{{{zzzzz{{z{{{{z||z{{zyz{y{{{{{{{{{{z{{{zzz{{||{{{{{zz{zz{zzz{{|{{z|zzyzyzz{{z|z{||{{zzz|zz|{{{{{{|{zzzz{{{||{{|{{{zzzzzy{{|z{|z{{|zz{z{{z{{{{{{|{{zz{{{zzz{|{{|{{||z{zzzyz{{{|||{{{zz{{{{{|||{{{{{{|{z{{{{{{|{|}{|{{{{|{|{||{|{||{{{{{zz{{{{}}|||||{{{{z{{{|{{|}|{{{{z{|{{{|||{|||{{{{{{z{z||}}|}||{|}{{{{||{||||{{{{{{{z|z||{||||{{{|{{|{{{{||{|{{|{{|{{{{|{|{||||{z{|{{z||{{{{||{{{{|{{{zz{{{{{{{{{{z{{{{{}{{{|{{{{{{{{y{|{}|}|||{zzz{zz{|{z{{{{{{z{zzzz{{|{{|||{{zzyyyz{{|{z|{|{zzz{zzz|{|{{{|{{z{{zzzzz{{z{{{z{{zz{zzz{z{{{{{{yzzzzzzy{|{{z{{{zzzzz{z{{{{{{{{{{zz{zzzz{{{z{{{{z{{zzy{{zzzzy{{{{{zzzyy{z{{zz{{{{{{zz{z{{zz{z{{|zzzzzz{{z{{{{{{{{zzzzz{{{{{{|{|{zzz{zz{{{{|{|{|}{{{{|z{{{|{|z{|{{z{{z{yz{|{||{{{zzz{z{{{{{|{{|{{{{zz{{{{{{||{|||{{zzz{||{|{{|||||{{{z{{{|{|{{|{{}z{z{{{z||{|||||{z{{{{|{||||{||}{{{|{{{{|}|||{||{z{{{{|{{{|||||||z|{{z{{||{|{|||{{z|||{|{{||||}|{{|zz{zz||{{{|||}{{{z{|{||{|{||{{z{z{z{{{||}{{|}}{z|zz{zz|{{{{{||z{z{|zz{{|{{{z}|{{z{{{z{{{{{|||{z{z{zz{{{{zz{{|{zzzzz{{{{|{|{z|{{{{zz{z{{{{z{{{{{zzyzy{{{|{{{{{z{z{{{y{{{z{{{{|zz{{zzz{{{z{{||{{z{yz{zzzz{{{{{{{{{zyzzz{{z{{z|{{zz{zzzz{yzzz{{z{zzzzzzz{|{z{{{|zzzzz{zz{{{{{{|{{z{zzzz{{{{|{{{{{yzzyzzzz|{{|{|{{{zzz{zzzz{|{{{|{{z{{z{{{{{||{||z|{{zzz{{{{|z{|{{{{{z{z|||{{|{|}z{{{z{{{|{{||||{{z{{{{{z{{{|{||||{{{{{{{|{z|{{|{|z{{|{{{}||{{|}}|z{{{|{{|||||||{{{|z{{{{{||||||}|{||{{{{||{|z{{||z{{{z{{{||{||{||{z{y|{{|{||{|{||{{z|{{{{{{{{||||{{{{{{{{|{|{|}{{z{z{z{y{{|{{|||{{yzz{zz{|{|{{{{z{{{zzz{{|{{{{{||z{z|{z{{{{{{||{{{y{{zzz{{{|{{{{|{{zzz{{{{{{{{{|{zz{z{|{{{{{z|{z{{{y{{yz{{|zz{|{z{{{{{z{{z|{z{{{zz{z{zzz{|z{{{{{zzzzzzz{{{{{{{{{{zz{zzyyz{{{|{{z{z{{zzyzz{|z{{{{{{z{zyyz{zzz{|{zzzzyz{{yz{{{{z|{{{zyzz{z{{{zz{{{{|{{z{z{{{|{{{{|{{y{z{{{{{{{{|{{{z{{{z|{y|{|{{{{{{|{{zz{{{{|{{}{{z{{{z|z|z{{{}{|{{{||{{{{{{{||||{{zz|{|{z|{{||||{{{{{{{{|}{|}|{|z{{|{{z{}|||{z}||{{zz{|{{}||{||||{|{{||{|}|{|}|{||{{z{|||||||||||z{|{zz{|{|}||{||{{{|{{{{|{||{|{{||z{{{{||{|||||{|{{||z{||{|{|{|{|{zzz{y|{|{z||{|{{{z{zz{|{{{{||{{{|z{zz{{{{{{}|{{{z{{zz||{||{{{{{{{{z{{{|{{z{{|{{{{z{z{z{{{{{{}{zzyz{zzy{z{|{|{{zzz{zzz{{{|{{{{zz{zzzz{{{{{{{|{zzzzy{zz{z{|{{{{{z{z{zy{{|{y|{{{{{zzyzzzz{zz|{{{zzzzzzzzz{{{z{z{{zzzzyzzzz{zz|{{{z{zzz{zz{{{{{{{{z{yyzz{{{{{{|{|z{{{z{{zz{{z{{{{{{zzzz{zz|z{|{|||z|{{{zz{{{{||{}{z{z{{z{{{||{{|zzzz{{z{{z|||{||{{z{{z{z{{{|||||zz{z{{{{{|{{|||||{{{{z{z{{|{}|{|}{{|{{{{{{||{||}}{{{{{|{||{||}||||{{{|{{{{||{||{||{{|{{{||{{||||||z{{{{{|{||||||}|{{||{{{||||||}|{{{{z|{{{|{}{{||{{{{{{{z||{||{|{{z|{|z|{|||{|{{{zz{zz{zz{{{{|{||{{{|{{zz{{{{{{{|{z{z{zzz|{{{{{||{{{zz{{zz{|{z{{{z{|{z{zz|{z||{{{zz{zzy{{z{|zz{|{{zzzzz{z{{zz{{{{zzzzzzzz{{z|z|{{{{zzzzzy{{{{{{|z{{zzz|yz{z{{||{{{zz{y{zz{z{{{{|zzzzzzz|yzz{zz{{{zz{zzzzz{{{{z{{{z{z{{{{y{{{{zzzz{zzzzz{z{{{{zz{|{zzzy{z{{{{{{{{{zzzzzz{z{z||||}|{zz{{y{z{|z|{{||{z|{{zzy{{||{||{{z{{{{{z{|{{|{|{z{z{|z{z{{{|{{}|z{{{{z|{|{{|{|||{{{{yzz{{|||{|{||{z{{{{{||{|||{|{{|{{{{{|{{{{||||{{z{{{{{}|||{}|{{{{z{zz|{|{{}||{z{z{{{{||{{{|}|||||{{z||{|||{||{{{z{z{{z{|{{}}{|{{{{{zz{z{|{|{{{{{z{yzz{z|{{{{{zz{zzzz{z{{{{{}|{{z{{z{zz|{{|z{|{{zy{{{{{{{{{{{{zzzzz{zy{z||{{|{{{zzzzzy{|{|z|{|z{{{z{zz{{{{{|{{zz{{{{{zzzz{z|z{zz{{zzzz{z{{z{{|{yz{zzz{{z{z{{{{zz{z{{{{{{{{||{{zz{zzzzzz{||{|{{{zzz{z{zzz{z{{{{zzzyyyz{{{{|{{zz{z|yzzzz{{{{zz|{|yzyzzzzz{{|{{{|z{{yzzzz{{{{{{||{z|zyz{z{{{{{{{zzz{{{{zz{{{{{{{{{{|{{{{z|z||{{{{{z|{{{}{{{{|{{{|{{{{{{z{{{{|{||{{{|z{|{|{{|{{{||}{{z{z{{{{{|{||||z{{{zz||}||{{||{z{z{|{|{{{|||{||z{{{{{{z|||{{|||{{{{z{z|{{{||||{zz{{|{{||{{{z|{||||{{{z{{|{||{|{|{z{{{{{||{|{}{{{z{z{{{z|{{||{|{{{zzyzz{{|{z{z{y{zzz{zz{||z{|{|{{{{{zz{{{{{|||{{|{{{|{z{{{{{{{z{z{zzz{{{z{{{|{{{{{{{{z{{||{|{z{{{{{z{zy{z|{z{{{{{{zzzyy{{zz{{|{{z{zz{yzzz{|{{zzzzzzzzzz{{{z{{z{{zz{z{z{zz{{{{{{zz{zzzzzz{{{z{{{{yzxzzzzz{z{{|{{zz{yzyyzy{z{z{{{z{zz{zzzz|{z{{{{zzzyzzzzz{{|{{{{{z{{z{z|z{{{{z{|zz{{zzyz{|{{|{||{{||zz|z{{{{z{z|{z{z{z{z{|{|{{|{{z{{z{z|{{z{{{|{{{{{{{zz{{{{{|{{zz{z{{{{{|||{||{{{{zzzz|{{|{||}{|z{|{z{{|}||{|||{{{{{{{|{||{||}{{{{{z{{{z||{}{|||{{{|z{z||{}|{{{{zz{z{{{{||||||||{z{{|z{|||{|{|{{z|{z{{z{{|||||||{{{{{z{{{{|{{z|{{{{zzzz|||{{{|{{z{zz{|z{{{{|{||{z{zzzzz{{|z|{{{{{{zz{z{{{|||{|z{zzzzz{z{{{{zz{{z{{{y{{zzz{{{{z|z{{zzz{zzz|{{{z{|z{zzzzz{{{z{{{z{z{{z{z{{z{z{{{{zzzz|zzzz{{z{z{{zzyzzzzzz{{z{{{zzy{zzzzzz{{zz|{{zzzz{yzyz{zz{{{{{{zzzzzzz{z{{z{zz{{{zzzzzz{|{{{z{zzz{zz{z{||{|z{z{{zzzzz{{{{{{z{z{z{yz{z{{|z|z{{zzzzz{{{z{{{|{|{zzz{{{z{{{{z{{|{z{z|{zz{{{{|z|{|{zz{{{z{{{{|{|||{z{z{{|z|{{|{|||z{{{{{z{z|||{{|{{{z{{{{z||||z{||{z{{{{{{|}|{{}|||{{{{zz||}{||{|||||z{{{{{||{|||{{z{{z{zz|z{{|{|{|{{{{{z}|{{|{{||{{{{{yzz|{|{{|||{{{{{||z{|{||||{|{|z{zzz||z{||{{z|{{z{{yz{{||z|{|zz{{y{z{|{{||{{{{{{zz{z{{{|{{}|z{z{z{{z{|||{{{||{{{{{{z{{{|{{{|{{{zzz{z{|||{{|{{{{{zzzz{{{{{{z{y{{yz{zz{{{|{|z{{{zzzzzz||{zz|{{{zz|zzzz{|{{}{{zz{z{zz{z{{{{z{{|{z{zzz{z{zzz{{{z{z{{zzz{z{zzzz{|zzzz{{{yzz|{{{{zz{z{zzz{{{{{{z{{{z{z{yz{{{|{{{{}{z{{zzzz{{|{{{{{zz{z|zz{{|{|{||{{{{{{{{z{|{{{{||{{z|{{{{{{|{{{|{{z{{{zz|{|}{|{||{{{{{|{{{|||{}||z{{{{{{{{|||||{||||{|{{{}|||{|||{z|{z{|{{|||{|||}{{z{|{{|}|||}{||{{{{{{{~|{|{{||||{|{{z{{||{|{||||{{{{|{|{|}||||{{{{zz{{{|||}{{{{{{{{{{z{|||{{|{{|}y|{{{||{|{{z{{{{zz{zz{z{z{{{|{zz{{z{z|{{||z{{{{{z{zz{{{{||{|{|{{z{{zz{{{{|{|||{zzzy{y{{{|{z|{{|{z{{{y{{{{z||{{{zzz{{zzz{z{|||{{zzz{{zz{{{z{||zzz{zzz{||{{{{{{z{zzz{zz{{{{|{{{z{zzzz{z{{{z{{|{{{|{zzzyzz{z{{{z{z{z{zzz{{zz{{{|yz{zz{{zz{z|z{||{z{{z{{{z{{zz|{{{{zy{z{{{z{{{}||zzz{zzzz||{{z{|{{z{zzy{z{|{{{|{{z{{z{{zzz|{{{|||{|{{z{{{{{|{|||||{z{{{{z{{|{||||{z|{{z{z{{{|{||{{z{{{{z{{|{{|{|}{{z{|{{|{|{}}{|||{||{||{|||{|||||{{|{|{{{|{{{{||{|{|{{{z}||{{||{|z{{{{z{}|{||||}{{z{{|{{||||{||}{{{z{z{|||{|{|{{{z|{{z{z{||{{}|{|z|{zzzz{{|{||{{{{yz{z{{|{{{z||z{{z||zzz{{|{{|{{{zzz{{{z|z{{{{{|{{zy{{{z{{{|z{||{{z{y{zz{{|{|{{|{{{{{{zz{|{{zz{z{z{{z{{{{|{zz{{{{y{zzzz{{zz{z{{|zzzzzzzzzz|{{z|{z{{y{z{y{zzz{{{{zzzzz{zz{{z|{{{{{zzzyzzyzz{{z{{{{zzzzzzzy{z{{{|{zzz{zzz{zz{zz|{|zz{z{zyzz{{z{{|{{z{z{z{{{z|{|{{{zyzz{zz{{{{{z||{y{z|zy{z{{{|{|{{z{z{{z{{{{{|{{|z{{{z{{{{{{{{{|{|{{z{{{zz{||{|||{z{{|{{|{||||||||{|z{z{zz{|||}||{{{{z{{{{{|||||{||zz{{{{{{{{||||||{|{{{z{{|{{{|{||{{{{z{{|{{|{{{{{z{||{{{{z|{|}|}|{|{||zz||z{{|}|{z{z{{{{|{|{|{|||{z|{zz{|||||{{{{{|{z{z{{|{|{{|{{{|{z{{zz{{{|y|{|{zz{{{{{{|{{{||{{{yzzzz{|{{|{{|{{z{{{{zz|{|{{{|z|{z{{zzz||{{{||{zz{z{zz{{{{z{{{{zzzzzz{{{{{{{{z{z{zz{z{z{{{{{z|zz{z{z{{{|{{{{{z{{zzy{z{{|zy{{{{zzzyz{zz{{z|{{{|{zy{z{zz{{|z{{{|{zz{{yzzz{{{z{{{{zz{zzzz{z{{{{{{{yzyzzzzz{{z{{{||z||{{zz{{{{z|{|{{zzzzz{{{|z{{{{|{z{zz{{zz{|{|||{|{{{{z{{{||{{|{{zz|{{{{||{{{{|||zzz{{{z{||||z||{{{{{{{z{|||||||{{z{z|zz||{{{|||{{z{{{{z{||{{||}{|{z{|{{{|||||||{z{{{|z{{|{|{|||{{{|{{{{|}{|||{|{z{zz|{{{|{|||||{{{{{{{{||{{{{{|{|{{{|{{{|{||{|{||{{|{{{|{{{{{||{{{{{z{{|{|{|{{{{z{zz|{{{{|||{{{{z{z{|{|{|}{{|{||{{{{{z{{{{{|{{{|z{z{{{{{{||{z||{{{yy{{z|{||{{{}{z{{zzzz{{z{{{{{{zzyzzz{{{|{z{{{{{{{zzzz{{{|{|{{{z{z{{z{|{||{|{{{z{zz{y{zz{{|||{{{zz{zzz{{{{{{|{z{zz{z{zz{{{z{{{{zyzzzzy{zz|{{{{z{{{zzzzz{{{z{{{{zzzzzzz{|{{{{y{{{{{{{{z|{{{|{{|{|{zzz{{{{{{{{{{{{{{{z{z{z{{{||{|zz|{{z{{{{z|{|{{z{{zzz{||{|{{|}|zz{{{{{{{{||}||z{{{{{|z|{{|||||{{{{zz{z{||||||{|z{{{{|{||{|{|||{{|{{{|{|{{|||}{||{|{||{{~||||}||{||{{z{|||}|||{{{{{|{||{}{{|{|}|{||{{{|||{}||}{{|{zz{{{{||{}||{{{{|{{{{{~{{{|}{{z{zz{{z{{{|||{{{{z{{y{z{{{|{{||{{{{zz{|{{{z{|||{zz{z{zz{|{{{{{{{{{{{zz{{{|{{{|||z{{zzzzz{z{{{{{{z{zz{zz{{{{{{|{{z{z{zy{{{|zz{|{zzzyz{yzzz{{z{{{{zzz{z{y{{{|{{|{yyz{zzyy{z{{z{{{z{{zzzzzz{{{y{|{{zz{{zzzzz{zzzz{z{zyzzyz{|z{{||{zy{yyzyy{z{z{{|{{{zzzy{z{|{{{{||{zzzzz{{z{{{{||{{z{|zz{{{{{zz{||zzzz{z|yz|{{{|||{z|{{zyz{{|{z{|{z{{zzzzz{|{z{{|{||{z|zzz{||||{||{{{{z{{{||{|{||{{{zz{{z{{{|{{||{|{{||{z||||||||{{{{{|{{{{{{{|{{|||||{{{{||||||||{{|{zz|z||||{}{|{z{|{{zz}{{|||{{|{z{{{z{{{{{}|||z{{{zz{{{|z|{||{|{{z{{{{{{{{|||{z{{{z{zz{{{{|}{|zz{z|z{z{{|{{{{|{zzz{z{z{{{}z{||{{{{z{{{z{{{{{{{z{zzz{z{z|||z{{|{{{|{{{y{z{{{|{|z{{zz{{{{|zz{{z|{{|z|zzz{{|{zz{z{zz{z{{z{{{{z{{|{zz{zzz{{{z{z|{{{zzzzzz{{{{{{{{{z{{zzzzzz{{{{zz|{{z{zzzzz{{zz{{{{zyz{zzzy{z{{z||yzzzzzzzz|{z{{{{{zzz{z{{{{{{||{{z{{z{z{zz{{{{{||{{{{zz{z{||{{|||{{zy{z{zz{{{||{{|{{zzz{{||||z|}|{zzz{{z|||{{{{||{{z{{zz{{{{{{|||{|{z|{{z{{{|{|||{||{z|{{|{|{{||{|{|{{{{{|}||{}{|z{||{{|{{||z|{|||{{{||z{{}}||}|}|{|{{z{||||}|||{{{{{|{{{|||{||||}|{{|{{{{z{|||||{{|z||{|{|{||||{|{{{{|{zz|||{|||||{zzz{z||{z||{|{|{{{{zz{{|{{||{zzzzzzz{{||{{z{|||z{zz{z{{|{{|{|{{{z{z{zz{{|{{||{z{zzz{z{|{z{|{||{{z{{zzz{|{|{z{z{zzzzz{{z||{{z{{{yzzzzz||{{z{{|{zzzzzz{z|{z{{|{{{zzzzzz{z{{{{{{{zz{zzzzz{z|{zzzzzzzzzzzyz{zz{{|{{{zz{zy{{z{{{{|z{z{{{zy{{{z{{{{{z{z{zzzz{{z{{{{{z{{{z{z{{{{{{||z{|z{{{{{{{{{{||z{{{{z|{z{|z||{{{zzzz{{{{{{|z|}|z{z{{|{{|{|z||||z{{{{{{{|{{}{|{}{{z|{{{z{||{{}{||{{|{{{{{||||||||{|z{z|{{|{{||}{{{|{{||||||{||||{{{|{{{{{|}|||}||{{{|{{{|z{|||}|{zz{{{{{{{||||||{{|{|{||||||{|||{{{{zz{{{{||{|}||{zz{{{{{|{||{|{{{|{zzzz{{||{{zz{z{{{{z{{||{{{{{zzzzzzzz{{{{|{{||{zzzzzz{z{{|{|}{zz{{{zyz{|{{{{{{z{{zzzyz{}zz{{{zzzyyzzzy{{z{{|z{z{{{zz{{z|{{{zz{zz{zzzz{y{{{zz{yzz{z{yz{z{{{{{{zzzzyzy{zz|z{zz{{{zzyzzy{zzzzz{{{z{zzzzy{yzyz{z{z{yz{yyyzzzz{|{|zzzzzy{z{zz{{{{{zzyz{{zz{{{{{{{|zz{zzzz{z{{{{{{|{y{zzzz|{{{zz{{{zy{{{z{z{|{{||z{{{{zz{zz{||{{{{z{z{{{z{{z{z|{{|{zzzz{z{z{{{z{||{zzzz|zz{{{z{||{|z|{zzzzz|{{{|||{{z{z{|{z|{{|{||||{{{{{|{{|z|||||{{{zz{z{{}{{|{|{|{{|{{{{{||||{{{{zz|z{zz{{{{|}{{zz{{{z{{{{{|||||{{{yz{z{{{{{|||{}{zzz{z{{{{|{|||||z{{zz{{{{{z||zzz{zyzzz{{{{{{|||{{z{zz{z{z{{{||z{{z{zz{{{{|{{|z{zzzzz{{{z|{{z{zzzzzzz{z{{{|z{{}z{yz{yzz{{z|{{{{{{{zzyzzz{{z{|{{{{y{z{zz{zz{zz{{z{zzzzzz{{{zz||z{z|zy{zzz{z{{{z{{zzzyzzy{z{{{y{{zzzyzz{yzz{zzzz{zzzyzzzzz{{z{{{{zz{zz{zzz{{{|{{|{zzzz{yz{zz{z{|{z{{zzz{yzyz{z{{|z{zzzzzzz{{z{||{{z{{{z{{{{||||{|{z{zzzzz{{z{z{|{|{zz{{z{{{|{{{{{{{zz|{{{{{|{|{{}z{{z{{{z||{{{|{{{{{{{{z{|{}||||{|z{{z{{||{|{||||{{{{z|{{{{{||{|||{z{zz|||}{{{||}{z{|{z{{||{|||||{z{{{{z{z{|{|{||{z{{|{{{z{{|{|||{|{zz{|z{|{{|||{|{{z{|{z{}|z{{{{|{{{{{{z|{|||{|zzz{z{z{zz{|{{{{{|z{{zzz{|{{{{{|}{{{zzz{z{{z{|{{|{{{{z{{zz{{{{{|{zz{zyzz{{{{{z|{|{{{{z{{zz{{z{{{{zz{zzyzz{z|{z{z{z{{{zzz{z{{{{{{|zzzzzz{z{{|{{{{{zyzyzzzzzz{zz{{{z{{zz{z{{{z{|{{{zzzz{zzyz{zz{{z{{{zzyzzzz{{z{z|zzz{zz{yyz{{||z|{|{{y|{z{zzz|{{{|{y{z{y{z|{{{|{|{{{|zz{zz{|||z||{{z{{zz{{{|||{|||z{{zzzyz||{|{|{z{{{{{z{{|{|{{||||{{{{z{z|{||{{{|{|{zz{{{{||{|||{{z{{|z{{||{||{}||z{{{z{{{|{|||||{{{|{|||z||||||||{{|{{z{{|}|{||||{{{{|{{||{|{|}||z{{{{{{{{{{}{}||{{{{{{{{{{|}{||{{{|{{{{{{{{||||{{{z{z{{|{||||||{{{{|z|{{|{||{{|{z{z{{{{z{{{{z{|{zzzzz|z{z{{z{{|{{zz{{zz{{{{{{|{|{{zzzzz{{{{{{{{{z{z{zzyz{{{|{{}z|{zzy{z{{{{{z|z{z{{{{{z{z{{y{{zzz{{{z{z{{z{{|{|zzzyzzy{{{{z{{{zzy{zyzy{z{{{{z{{zzz{zzzy{z{z{z|{{zz{zy{yzzzyz{{z{{zyzzz{{z{zz|{{zzzzzz{y{zzzz{{{|z{z|z}{z{|{{{{|z{zzzzzz{{||{{|{{{z{zz{{{{|||zz{zz{|zzzzz||||{||z{zz|zzz{{{|{{|{{z{zzzz{{|{z{{{{{yz{z{zz|{{|||{|{{{{{{{||{|||{|{{{|{{zy{{{|||||{zz{z|{{|{|{{{||||z{z{{{{|}{|||||{{{|z{|z||||{||{{{{{{z{|{|||||||{{{{{z{{||}{|{||{{{{||{||{{}||{||{{z{{zz{|{||{||z|{{{{{{|z{|{{|{{|{{|{z{{|{{|}{{{{zy{zzz{{|{{{{|{z{{zzzz{|{{{{{|zz{z{{z{z{{{{{|{{z{zzzzz{{{|{{{|{{zz{{{z{z{{{{z{zz{{z{zzz{{{z|z{zzz{zz{z{{{{y{{{z{z{zzzzzz|zz{z|zyzzz{{{zz{{{{{{zzzzzzzzzz{{zz{{zzz{z{zzz{{{{{{{{zzzzyzz{{zzzz{{z{yz{zzyz{z{z|z{yz{z{{zz{z|{z{||zzyzzyzy{z{{{|{{{{{z{z{z{{{|{{|{{zy{zzzzz{{|{|{{{{zzzz{zz|{|||z{zzz{zzz{{{||{{|{{{{{{{{{{|{{||{|{{|{|{{|{|{|||||{z{{{{|{{|{|z{|{z{{{{zzz{||||||{|{{{|{{z||{|{|}|{{|{{|{{||z|{|{{|z{z{|{|z|||{||{{z{{{{|{|{{{|}{{{{{{z{{{{|{{{||{||z{|{{zz|{{||||{{{z{z{{{{{||{}|||{{{z{{{||{|{{{{z{{{z{{||||}{{{zz{{{zzz{{|{{{|{{{{zz{{{{{{{{|}{{z{yz{yzz{{|z|||{zz{{zz{{{{{{z|}{{{zz{{y|{{||{z{z{{z{yyz{z{z{{{|zzzzzzzz{{z{{{|{{z{{z{zzz{zzz{||z{zz{zzzz|{{z||z{{z{{zzzz{z{{{{{zyzzyzyzz{{y{{{z{zz{zyzzz{zz{{z|{{yzyzzzz{{{y{z{zz{z{zyzy{zzz{{{{zzzzz{yz{z{z{{{{zz{zzzzz|{z{{{{z{{zz{{{{{{|{|{{{{zzzzz{{{{{{|{{{z|{{zzz{{{{{{|{|z{{z{z{{z{{{|{{{{z{z{zz{{|{|{|{{{z{{{{{{|{||||{{zz{{zzz|{|||{|z{z{{{{z{{{|{{||{{{{{{{z{{{{||{{||{zz{zz{{|||z|{|{zz{z{{||{|{{|}{{{{{|{{{{{|||{||{{|{{{{{|{{{||{{|{{z{z{z|{||{{||{{z{|{z{|{{{{{}{z||{{{{z{{|{{|{||z|z{z{z{{||{{|{{{zyz{zz{{{{{|||{{z{zz{z{{{{{||{{z{yzzzz{|||{{{{z{zyzzzz{{{{z{z|z{zzz{|{{{{zz{{{zzz{{z{y{{{zz{{{{zzzzzzzz{{{{{{{{{{zzzzz{{{{{|{{z{zzzzzz{{{{{{zz{yzyzz{{{{{{{z|{{z{zzzyy{zzyy|{{{zz{{zyzzz{zz|{zy{zzz{yzzz|{{{|{zz{zzz{{{{{{{{z{z{{zzz{{{{z{{z||zz{{zzzz{{|{{{{{z{{z{z{{{{{{z{{|{{{{{|zz{{{{||{{{{z{z{{{{|{{{{z{{{z{{zz|{|{||{{z{{{{z{{||z{|{|}|{z||{{zz{z}|{{|z{{{{|{z{{||{||{||{zz{{z|{||{{||{|{z|{{{{|}{||||||{|{z|{|{||}{{||{{{{{{{{z|{{{|||{|{{{zz{{|||||{||z|{z{{z{{|{||||{zz{zz{z|}{{|{{{{{{{{{|z|{||||{zzzz{zy{zz|{{z|{|{{z{zzz{z|{{{{z{{z{zzz{{|z{{{{|z{zz{{zz{{|{{{{{{{{{z{zzz{{{{{{|{{zzzzzzzz{z|{|{{{{zzz{zz{{{z{{{{{zzz{zz{z{|{{{{zyzzzzz{z{z{{{{{{{yzzyzzzz{zzz{{zzzzzyzzy{{{|{{{{zzzzzzz{zz{{zzzz{z{zy{zz{{|{z{z|zzzy{zzzzz{{z{{{{zzzzz{{{{{{{z|{zy{{{{{y{{{{{{|{yzz{zz{zz{{{{|{{{{{{zz{{z{||{|{{z{z{{{{{z{||{{|{|{{{{{{{{||{{|{{{{{z{{{{zz{{{||z{|{|{{|{{|{{{{||{z{{{zz{||{|{||{z{{z{{z{}}{{{|{|{{|zz}||{||{||{||{{{z{{{{||||||||{|{{z{{}||{|}{|}{{{{z||||{|}|{|||{{|{{z{{|{{|||{z{z|{z{||{{|{{|||z{{zz{{||{{|||{{|{{{|{|||||{z|z{z{zzz{y{|{{{||{{z{zzzz{{|z|{{|z{z{z{z{{{||{{|{{{{zz{{{{{z|z|{|z{zzz{{z{{{{|{z|z{zzz{zz{{{zzz{|zz{{z{yz{{|{{{{z{{zyz{z{{{z{{{{|z{{z{zzzzzz{{{{{zzzzzzzz{z|{{{{zzzzzzzzyz{|z{z{{{y{{z{z{zz{{z{{{{{zzzzz{{|z{{{|{{z{{z{z{{{{{{{{{{{zzyz{zz{||z|{{{{{{zzzz{{{{{{{{zzz{{{z{{||{{|||{{{{{y{{z{{{|{{|{{{{{zz{z|{{{|{{{{{z{{{{{|{{{|{{{{{{{|z{{|||{|{|z{z|{z{z||||||||z{{{{z{{}{{|{|||{{{y{{{{|||{||}|||{{{{{{{{||||}||{{{z{{{z}|}||||{z{{|z{{|}{|z|{{{{{{|{{|z|||||||{{{z|{{{{|{{{||{{||z{{{{}|{{|||{|{{{zz{z{z|||{|||{{{{{z{}||}|{{{z{y{{y{yy{{zz||{{zzz{z{z{{|{{{{|{zzzyz{y{{{|{{||{{z{{{z{{z|{{{{||{{z{zzyz{{z{|{}z{{zyzzz{|{z||{|{zzz{zzzz{{zy{{{{{zzzzzzyzz{{{{{yz{zyyyz{z{{{|{{{{zzz{z{{z{{{{{{{zzzz{zz{{{{z{{|{z{zzz{z{zz{z{zz{{yzzz{zy{z{z{{{zzzzz{{zy{{z{||zz{z{{z{zz{{|{{{|{zzyzy{z{z|{{{z|{{z{zz{z{{{z{{z|{{{zzzzy}{z{z{|{{{zzzz{z{|{|{{|{z{z{{z{{|||{{{{{{z{z{{{{|{|{{|||z{{zzz{||}{}{|||{{{{{zz{{{|{|||{}{z{|z{{||{|}|{{{{z|{{{{{||{||}||{{z{{{z{{{|z||}{|{||z{{|{}|{|||{{{|{|{{||{|{|||||z|{|z|||{{|{z|z|{{||z{|{|{{|||||zz{{z{{}||{|||{||{{{y|}|||}|z{{{{z{y|z|{{z{{{{|{{{z{z{{||{||{{{z|z{zyz|{{||z{|{z{zzz{{z{|{{|{|{{{zyzzzz{{{{{{|{zzz{z{zz{z{{{|{{{zz{{zz|{|{{|{{zyzyyzz{{{|{z{{{zzzyz{{zzz{{{z{{zzz{zzzy{{{z{{{{{{zyzzzzy{{{{||{zzzz{zyyy{zzz{{{{z{zzzzzz|z{y|{{yzz{z{zzz|{{{{{|z|zy{yzz{{{{z{{{z{{{{z{zz{{{{{||zz{z{zzz{z||{|||{zzz{z{y{{{{{{{|z{{{{yz{z{|{{|}||z{{{{zz{{{{{|{{{{{z{zz{{||}{|{{{{{{{{{{{{{|{|||{{{{{{zzz|{||z||{z{|z{{{|||{{||||{{{z{{{||{|{|{||{z{{||{|||||||{|{|{{z{{||{{|}|||{|{{|z{{|}|{|{||{{{|z{z{|}|||}|{{{{z{|z||{||{||{{{{{z{z{{{|{|||{{|{|{z{||}|}||{{{z{zzyz{z{{{{||{zzz{{zz{{{{{{|{{z{yzz{z{{{{|{{{{z{{zz{zz{{{{|z{|zzzz{zyz{{z{{y{z{{z{z{z{zyz{{{{zz{z{yz{{{z|{|zzzzzzzz{z{{z|{{{zzzzzyz{z|{zz{z{zzzyzzzzzz{{{z{{zzzzzyyy{zzz{{{|{{y{zzzzzy{z{{{{|{{zzzzz{{{z{y{{{z{zzzyzz{z{z{z{{{z{zzzzz{z{z{y{{{z{|zzzz{{zz{|{|y{yzzyzzz{|{{{||{zzz{{z{zzz{{|{|{zzz{|y{{{{{z{||{{{zz{z{{{{{{{{z{zzz|{{{|z||}|||{{{{{{{z{|{{{{{||zz{zzz{{{|{|||||{{z{z{{{|{|||||{z{{z{{|{|{z|}|z|{{||{||{||||||||{||{{z{||{{{{|||{{{{zz{||||}|{|{{{{{{{{{||||{||{{{{||{zzz{{|{||||z{zz{{{{{|{|{||{{{{{|z{||}~{{{zz{zzzzzz{z|z{||{z{zz{zzz{{z{{{|zzzyzzyz{{|{{|{{zz{zz{zz{{{|z{z|{z{zzzzzz{{|{{||{zz{z{{yz{zy{{{z{{zzzz{yzz{{z{{{zz{z{{zzz{zzz|{|{zzzzyzyz{{{{{{|yzzzz{yy{z{z{zzzzyzzzzzzzz{{z{{{zz{{zzzyyzz{{{z{zyy{yyyz{zzzz|{|zyyzz{zzz{z{{{|{{zz{zzzzz||{z{||zzzyzzzz{{{{z|{{{zzzzzzzz{{{{{{z{{zz|z{z{{{|z|zzz{{z{zz{{{{{{{}{{{{{{{{|{{|z{{z{{z{z{{zz{{||{|||z{{{{{|{{{{{{|||{{{{{z{zz|{{{|}{||{{{z{{{{{{||{|{|{z{||{{|||||||{{{{{z{|{||||||||{z{{{z{{{{{{|||{z{z|{{{|||{|z|{{|z{z{|z{|{|||||{{zz{{{zz{|{||{{z{zz{{{z{|{{{||{{{{zzz{z||}}||{{z{{|z{z{{|{{{{||zzyz{z{{{|{{{{{|{{zyzz{{z||z|z{}{zzz{{zz{{{{{{{{z{{{z{zzz{|{||{{z{{zz{zz{{{{{{{zzzzz{{{{{{{{z{|{{{{zz{zz{z{z{{{{zz{zz{{z{{{|z{z{{zz{zz{{{{zzz{{zyzzzzzzyz{{{zz{|zzz{{{yyzz|{{z{|z{zzzy{yy|{z{|z{{zyzz{zz{zzz{|{{{zzzzzzz{{z{{|{{{{z{zz{z{{{{{{{{{y{{{{zz{{{||{{|z{{{{zzz{{{{{||{|{z{{z{zz{|{{||{|z{z{{{z{|{zz{|||{{{{{{{|{{{|}{{z|{{{z{z{|||{|}|{|z{{{{|{{|{{|}||z{{z{{{{{||{{}}{{{|{{z{{|{{||||{|{{{{z{{||{|{||}{|{{|{{||}||||{{|zz{{{{||||{|}{|{|z{{{{{||||{||{|z{yz{{{||{{{{{|zz{{{{{z{|{|}||{||{z{{{|||}}{{{{zz{zz{z{{|z{{|{{{zzyy{z|{|z{{|{{zzz{{zy{z{z{{{|{{{z{z{z{{{{zz||{{{zzzyz{{|{{|{|{z{zz{{z{{{{{{|{zzy{{zzz{{{{{{{{zzzyzz{zz{{zz{{{zzzzzzyz{z{z{z|{{{yzy{y{zz{{|{{{{z{{zzzyz{{{{{{{z{zzzz{y{zz{zzzyzyzzyzzzz{yz{{{zzzz{zzzxz{{|{|{{{zzzzzzz{{{{{{{|z{zy{zzz{{{|{|z{zz{{{zzy{{{{{{|||z{{{zzz{z{{z|{{{z{{z{z{|{{z{z|{{{y|{{{z{{|{{{||{zzz{{z{{{|}|||zz{{{{{|{{|{{|{|}z{{|{{|{||{{|{||{{|{{z{{|||{|{||{{{{|{|{{||{}}}}|{{{{{z{{||{||||{|{{|{{{|{z|||{{{{{{{zz{||z{|||||{|{{|{{||{|||||{|z{z|{z{|{{|||{{|{z|{{{{|{|||||{{zzzz{{|{}|}|z|{zzz{{{z|{{{{{{{z{zzzzzz{{{{|{{{z{zzzzzz{{{z|{{zzz{{{zz{z{{{zz{|y{{zxzzy{{z{{z{{zzzzzzzzz|{{{{||zz{zzyy{|zz{z{zzz{zzz{zz|{z|{{{|yzzzzzzzzzz{{{|{zzz{zzz{zy{z{{{{zzz{yzz{{{{{{{{|{zyyzzzzz{zz||{{z{zyzyzyz{{zz{{{yyzzzzzyyz{{y{|z{zzz{{yyz{zz{{z|{z{zzzzz||{{{||{zzzzy{{z{||{z{||{z{z{z{z{|{zz{{{{z{zz{zz{{|{{{|z{zz{zzzz{|{{{|{{{{zzz{z{{|||{{|{y{zz{z{{{}z{{{||{{{{{z{z{|{{{{|||{{z|{{{{|z|{|}{z{{{{{|{}||{{||||zz{{|{z{||{{|||{{{{{{{||||{|{|{{{z{|{z{{{{|{}{|{z{|{{z|{{{{{|{{{{{z{zz|{{{{{{|||{{zzz{z{|{z{{{|zz{zz{|{{|}}|z|{z{|y{zzz{|{{z{{{{zzz{z{{z{{{{{||{{{yzyz{{z{{{|{|{{{{zzz{|{||zz{{{{{zz{|z{||z{|{{zz{zz{zzz{{zz{{|zyz{zy{z{z{z{{{{{zzzz{yz{zzz{z{|{zzyyyz{{{{{{||y{zzzzzzzzz{z{{{|zzz{zz{zzz{z{{z{{{zz{yzxzz{zz{{{zy{z{z{{z{z{{|{|{zzz{zz{z|z{zz{z{zzzzyzz{{{{z|{{{zzzzzzz{z{{{|{|z{{zzz{z{{{{{z|{z{{{{z{z{{{|{{{{{zzzz{{z{|{{z{|{{{z{{z|zz{{|{|{{z{{|{zz{{{||{|||z{{z{{||||{{{|||{{{{{{z{|||{||||{{{|z{zz||}{{{||{{{{{{|{{}{|{{{|{{|{{|{z{}|||{{{{|{{zzz{{|{{{|}{|{{{{zz|{{{{{{|}{|{{|z{|{{{}{|||{{{{{{{z||{||{|||zz{z|{{|{{|{{{|}z|{z{||||}}~|{zz{{y{z{z{|{|{{|{{zz{z{zz{{zz||{{|zzzzz{z|{{{|||{{z|{{{zzz{{{z{z{|z{z{zzz{{{}{z{|{z{z{zzzz{{{{||{zz|{zzzz{||z{{||zzzzzz{z{{{{z{{{z{zzzzzyzz{{z{z{{zzzzzzzzz{z{zz{zzyzzyzz{zz{{{{z{z{zzyzy|zz{{|{{zzyzzzzyz{{{{{z{zzy{zzzzz{z|z{{{{z{zzyyz{{|{z{{|{{zz{{{zzz{zz|{{z{zzz{{{z{{|{{{|{{{{{y{{{||{{{{{{|{{{zyz{{{|{||{{{zz{{z{z{{{|{z{{{{{{zz{{{|||||{zz{{{{{{{{{||||}{{|{{{{z{|{{|{{||{{{{{|{|}{{||}|{|zz{{{{{|{|{||||{|zz{{{{}|||}||{{{{{{{{||||{{{{{{{{{{{{|z{{||}|{{{{{{{z{|{|||||{{|{{{z{|{{{z{{{|}{zz{{|{|{|z{|}{{{y{{{{||}}}{|{{zzzzzzy{|{z{z||{z{z{zyz{{|z|{{|{zz{y|zy|{{{{{||z{{z{{yz{z{{z{z|{zzzzzzz|z{||zz|{{{yzz{z{{{yz{|z{zzzyzzzyz{zz{{{{zzzzzyzz{z{z|{{z{{zzyz{{z{{{{|z{zzyzzzyz{{{{{zz{{{{zz{zz{{zzz{z{zzyzyzxzzyz{zz{z{yyzzzyzz{{{{z|zzzzzzz{{{|{{{{{z{zz{z{y{{|{{|{||zz{zx{{{{{z{{z}{z{z{z{{z||{{{{{|{{{{z{z{||zz{{{{{{zz{zz|||{|{|{{{{{|zz{{{||{|{|{{{{|{z||{}||||{|{{z{z{||{{|z|||{z{||zz|{{||||{{|{{{{{{{|}||{|||{|{|{{{|{|{{||}}|z{{z|{{{}|{{||}{||{{{{{{{||||{||{||z{z{|{|}{|||{{zz|z{z||{{{|||{{{z{{z{{|{z{{||z|{|{z{zz|{|||{|{{|{||{{|||||{{{{{zzzzyz{{{|{z|{zzzzzyzzz{{{|{{{{{zzzzzz|z{z{{{|{zzyzz{{{|{z{{{zzz{zy{{zz|{zz{{{yzzyz|z{zz|zzz{{zz{y{xyzz{{z{{{{{zyzz{{{zzzzzz{{yzzzzzzyzzzzz{z{zyzzzzzzzz|z{z{{{z{zz{zzzzz{||{{{{{zzzzyy{{y{{{z{zyyzzzzzzy{{{{zzzzz{zzzyzz{{{|zz|zzzzzz{|zy{{{|zz{zzz{{|{||{{{{zzzzzzz{zz{{|{{{{{{z{{{zzz{{{|{z{z{z{{zy{{|{z||{{{zzzz{{||||{z{|{{{{|{{y||{|{||{{z{z{{{{{|{|||{{zz|{y{zz|{|{||{||{zz{z|z||{{{{||{{{{z|{{{|||{|{||{{z{|{||||{z|||{z{{{{{{{}{{|{{|{zz|{z{z{{{{{|||{z|{{{{{{{{{||||{|zzz{|{{{|{{{||{{{{{z{{{|{|{{||{{{z{{|z||}||{z{{{{zzy{zz{{{{{}{{{{yyzzy{z{|{{||{z{z{zzz{{z{{{{{zz{zzz{{z{z|z{|{{{{{zy{z||{z{{{{{z{z{yzzz||z{{|{yzzzzzzz{{{{z|{{zzyz{{zzzzz|zzzz{{zzz{yz{|z{{{z{zyz{z{zzz|zzzzz{{zz{y{zzz{{z{{|z{zzzzyzzy{zzzzz{{zzzzyyzzz{{z{{{z|{zz{zzz|{{{|||{{zz{z{{z{{z{{|||zzzzy{{{{{z{||{{{z{yzzz{{z{{{z|{z{{zz{{{|{{{{{|zz|z{zzz{||z{{}|{zz{|zz{|{|{{{|{{{z{z{zz{{||||}z|{{zz{|{}{z}{|}{{{{|zz{z|{|||{{||{{{{z|z}|{|{||}{{{zz||{{|||||}||{{z{{{{z||||{||{z||z{{z|||}||||{{{|{{{z||{{|{||{{{z{{{{|{||||{|{{zz{z{{{|{{|||}|{{{{z{{z|{||{{|{{{{|{{{||{}||{{{{{zz{z{{|{{{{|{||zz{z{zz||{{{||zzz{z{zy{{{{|||{{z{{{zzz{{{{{{{|{{zzzy{z{{z{z{{{{{{yz{{zzz{||{{{z{zzzz{z{{{{{{{{z{zzzz{{{{{{zz{{{zzyzzzzzz{z{zz|{zzzz{zz{{{z{{{{{{zzyzzz{{{{zz|{{z{zzyzzy{zzz{z|{zzzz{{zz{zz{{{zzzzz{z{z{z|{{{||{z{z{{{z{{|{|{||{zz{zz{z{{|{{|||z{zzz{z|{{|{{z{}{|{{{yzz{|{|{{|{{z{z|{{z|||{{{{{{{|z{{{{z|zz{{}{{y{||{{{||||{|{|{|{zz{{{||{||{||{{|{{zzz|{{}||}{|{|{{{{{{|{}|||||{{{{{||{{{{|||||{{{{{{{|}||||}||{|{|{zz||}||}|{{{|{{|z{|}{z|{||||z{{zz||}||||||{{|{z{z{{{|{|||||{{{zz{{z|{|{||{{{{{{{z{|}|{|{{zzzzzyz{zz|{{{{{{zzy{{y{z{z|z||{{{zzz{{z{{z{{|{{{{{zyzzzz{zz{{z|z{{{zzz{zz{{zz{z{{zzzzzzzz{{{{{{{zzzzzzyzz{{zzz{z{z{zyzzz{{zzz|z{z{yzzzzzz{z{z{{{{zyzyzz{{{|{{{{{z{{{zzzzz{{{zz|{{zzzzy{{yzzz{{zz{z{zzyzz{{{{{{z{zy{z{{zzz{{{zz{|{zzyzy{{z{{zz{{{{y{zzyzz{zzz{z{|{z{{z{{z{{{{|{{{{zzzzz{z{{{|z{{|{z{y{z{{{{|{zz{{zz{z{zz|z|{z{{z{{{{{{{{{z{{{{{zzzz{z{{{{{{|{|{||{{{{{z{{{|{|{||{|{z{{{{z{||{||{}{{|{z|{|||{{|{{|{{{zz{|{{|{|||||{{{{{{{{|{|}{|||{{z{{{{z{|{||||{|{{{z{{{{{{{|||{z{zzz{z{{}{{{||{{{z{zz{z{||{{{||{{{z{{{z|{|||z{{zzz{{z{z{{{{{{{|z{{zzzz{{{z{{|{zz{zz{zzzz{{{|{{{{z{z{zz{{{{|{{{{{{zzz{zz{y|{z|{{{z{zz{{z{{z{{{|{{{{{{zzz{{{{z{{{zz{zz{{zzz{|y{z{zzzzzzzzzz{zz{||zzy{z{zzz{{z{z{{z{{zyz{z{zz{{{{|{y{zzz{zz{{zz|z{zyzzzz{zz{z{{|{{zzzzz{zzzz{z{|{|{z{zzz{z{|{{z{{{{z{{zzz{|{{{{{{{z{{yz{zz{|{{{|{|{z{{{{{{z{|{{{{{{{{z{zzz{{|z||||{zz|{{z{{|{{{{{||{|{{|z{{{z|||}|{{{{z{{{{{||||||{{z{z{{{{||{||{|{{{{z{{{{|{|}{||||z{{|{{|||{|{|||{z|z{{{{}|}{{|{|}{{z|{||||||{||{{{{|{{|{{{{}||{{{{||{z{{{|}{|{|{zzz{||{{|{{||||{z{{zzz|{{{|{||{{{{z{{{|||}||||{|{{{|{{z{|{{{{{|{{z{zz{z{||{{||{|{{zz|{{{{{z{||{{{{{{{z{{|||{z|{{{{{{{{z{{|{{{{|{z{z{|{z{{{{|||{{z{z{{z{{{|{{z|}z{{{z{{{{{{{z{}{zy{zz{zz|{|{{{{|z{zzz{z{{{{{{||{z{{z{{zzzz}{{{{z{z{{{z{zz{{z{{{{{z|zzzzyz{z{{|{{{{{zzz{z{{{{{z{{{{z{zyzz|{|{|{|{{{{{{{{{{{|||{||{|{{{{|{||{{|{|{{{{{{{{z{{{{}{|}{{{{{zzz{|{{{{}|{zzz|zz{|||{{|{|{z{|{{{{{||{{{{|{{||{{|{}{||||}|{|{{|{z{|{||}}{{}{{||{z{|{|{|{|}{{|{|||||}||||||}{||{{{{||{|||}|||{{|{{||||||||||{{||{{}|{{{||{}|||{|{{||||}|}}||{z{|{{{{}||||||{{|{{{{{{{||{{{||z|y{{{{{{{|||{{|{{{{z{{z{|{{|{||{z{{zzz{{|{||||{z{z|z{{|{{{|}||{{{{||{z{{{}{|||{{|{{{{z{{|{{||{{{zzz{{zz|{z{|{{{{{{{z{{|||{{z{|{{zzz{zzz{{|||{}{zzz|{{{{{{{|{{{z{{{{zzz{z{{||{{{{{zzzz{{{{|{|z|{{z{z{{zz{{z{|{{{{z{{{{z{|{|{|{|{z{zz{{{||{|{||||{zz{{{|{{{|{{||{{{{{{z{{|{}{|}}{{||{{{{{{|{{{|{|{{{|{{z{{{{|{{|{{|{{{{z|}|{{{}||{{z{{z{|||{{|{|{{{{|{{|||}}||||{{{{|{{z||z}|||}{{{|}z{{|||||}|}||{{|{|||}}{||}|{|{{{||||||||}}|}{{||z{{|}{}|||{|{{~{{|||||||}|||{{{||{||{{{|||}|{|}{|{||||}{||}{{|z{{{{{||{||}||{{}|{{z{|{}||||{|{{{{{{||}{|{||{{{{zz|z{}|||{|||{z{|{z{||}{}||{{{z{zzz{{z{{||||}z{{{{{z{{{{{|{{{{{zz{{{|{||{|}||{{{{{{{{||{{{|{{{{zz{z|{{|{{{|{|zz{{{{{{{{|||{{{z{zz{{{{{z{{{z|{z{{z{zz{{|{|{{{{{zzz{{z{|{{{{||z{zzz{|z{{z||}{{{zz{zzzz{{|{{||{z{{zz{{{{z|{|{||{zzzzz{z|||{{||{|z|{{zz{{|||||{|{|{{zz|{||}{{||{|{{{|{{|||||{|{|{{{{|{|{|||{||{|{{zz{|{{|||{{|||y{{|}{{{|}{|}||}{{{{{{|{|{{|||}|{{{|{z{z}}||||}||{|{}|{||}{{}|||{|{|{{|{||}|||}|||{||}|{{||}{|}|||||{|||{|{{|}|}{z{||{{|||||{||||}{||{{||||||}}}|||z|{{{|}{|||}|{{||{|{z{|{||}}||||{{{{{{||{|}{{{{{|zz{{|||{{||}{z{|{zz{||||||{|{{{{{{z{{|{||||||z{{z{{z{|||||}|{{{zz{{{zz||}{{||z{{z{{{{|{{{{|{{{{z{z{z{|}{{||{{{zzz{z{z{|{{{{{{{z{z{{z|{{{{{z|{{z{zz{{{|||{{{{{{{{zyz{{{||z{|{{z{{zz{zz{{|{||{z{|z|zzzz{{{{||{|z{{|{zz{|{{|{{|{{{{{z{z||{||{||{{{|{{{{{|||||}{{{z{zz{|{||{{|||{{{{|{z{{||{|{{{{{{{{zy{{|||||}{{z{{{{{{|||{{{||{|{|||z{||{|||}}||{|{{{{|{|||{||{|{{{|z|||}{{|}||{|||{{{}|||{|}||{|z|}||{|{|||}|}{{|||||{}}{|||}|{|{|{|{}||}|}||||{{||{|||||||{}}}z{}{|{|}||||}{{{{|z{{{||||||}|{{{{{|{{{||}|}}{|}||{||{||{|{}{{z{{{{{z|{||{||{|{|z{|z{z{||{|||||{{{{||{z{|{{||{{{zz{{{z|{|{{z|||{zzyz{{{||{||{|{{{z{{{zz{{{{{{{zzz{{zzz|{|{z{|{z{{yzz{z{{z{{z{{z{{{zz{z{{{{{|||{{{{{|{{{{z|{{||{z{{{{{z{z{{z{{{{zzz{zzz{{zz{|{{{{zzz{z{{||{z{||zz{yz{z{z{z{z|||z{{{{{z{{|{|{|||{{{{zz{{|{{|{|{|{{{{z{{{|{{||{|{{{{|{{{z|||||||{|z|{{{{|{{{{|{}|{z{{{{|z||||{|{{}|{{{{{{{||{}||}{{|{z|||||{|{||}|{{{{{{{{||}|||{|z{{z{{{{}||{|}||{{{||{|{}}}|}|||{{|{|{{|||{|}|||{|{|||{|{|||||||{{{}{{{{{|{}}}}|{}{||{{{{|}}}}}{{{{{{|{{||||}}{{|{{{||{{|||{|}||{{|{z{z{~}{||}{{{zz{{{{{{z{|{{{{{{{{{z{{||{{{{|{z{{z{{z|{{{|}|||{|{{{{{{{|{{|}}{z{|{|{yz|||{{{{zz{{{z{z{{{{|{|{{z{{{zzz{{|{{{{{{{|z{zz{|{{{z{{|{{{z{|{{z||z{||{{{{{zzz{{{{|||{{{|{zzz|{z{||{||{{{{{{zzz{{|z{|{||{{{z{zz{|{|z}{{|z|z{{{{{{{{|||||zz{|{{z{{||||{|{{{|{z{{|||{|}|||{{{z|z{{|||||||||{|{{{{||}||}}||z{z{|{z||{|{{}|{||||z{{{||{{|{|z{{{|{{{||}{}||||||z|{{|||{|}||||{|||{{{|||||||||{|{z{||||{||||}|||||{{|z|{{|||||{|||{|{{}}|||}}{{{|{{{||||||||{|{|{|{{{|}|||}}|{||{|||||||}||||{|{{||{{{||{{|}|||{||{z||}|{{{||{{{{|{{{}||{||{{{z|{|{{{{{|z|{||{z{zzzz{{||}|{}}|{{z{zz{{|}z|{{||{{{{z{z|{z{{{||{|{zz{{z|{|||{{|{{|{{{{z{{{{|}||{{{{{{{z|{||{||{{{{{zz{{{{{|{|{{zzz{{{{{{{{{{{|{zz{{{|zz|||{{|{{{z{zzzzz{{{|{{{|z{z{zzz{{|zz{|{|{{zzz{{{z{z{{z|{{z|z{{|{{{{{|{{{z{{z{z{{{|{{||}||{{{{z{{|{|||}||{z{z{{{|{{{|{|}|{{{z{{{z|||||{||{|{{{{{{{|{|{||}|{{|{{{{{{|{|||}z{|{{{{{||||}|||{{|{{{}{||{{{||}{{|{z{||||}||}{}|{{{{|{{}}|||||}{|||{||||}|||}||||{||||{{|||}|||||{{{|||}|}|||||}{{{||{{|{{{|{|{|||{|{{||}|}|||}|||||{{|||||{}|||{{|z|{{{|||{{{{|{|{{{|{||}|||||{{{{{{|{{|||{{{||z{z|z{{{{|z|}||{{{{z{{|{|||{|{}||{{{{z{{|{{{||}{{|z{zzz{{|{{{{|z{{{{{{z||{{|{||{{z{{z{{z{{{|{{zzz{z{{z{{{z{{{{}{zz|{{zz{z{{{||{|zz{zzzz{{|z|{||{z{{z{zz{{{{{{||{zz{{{z{{{{{{{{{{z{z{{{zz|z{|{||{y{z{zzzz{|{{{{|z{{{|{{z{|{|{z|{|{||{{|{{||{||||{{z{{{{z{||||||{{{{{{{{{{|{{}|{{||{{{{z{|{|{{{}|{z{||z{z}||z}||{|{{{{{|{{||||}|||{|{{||{|||~|}|{|{{{|{{{|}|||||{||{|{{z{{}||{|||{|{|{}|||{{||||}}|{{{{{{|||}|||||||{{{|||}||{||||{{{|z||||||||}~}|{||{{||||{|||{|z{zz{{{}{|}{}}||{|{{{{{{||}{}}{{{{{{{{{}||}|{{{{{{{zz{z{||{||||z{z{{{{{{{{{|{|}|zzz{{{z{||{||{{{{{z{z{{||{|{{||{zzz{{z{|{{|{|{|{{{{{zz{z|{{{|{|{zz{{z{z{{|{|||{{{{{zz{{{{{{{|{|zz{z{z|{{{|{{||{{{{zzzzz{{{{{{{|{{{{{{{z{|{{{{||{zz{z{{{z{{{zz{{{{zzzzz{{{|{{|||{{{zz{zz{||{{||}{{zzzz|{|{|{|||{{{{||{|{{{||z{|}zz{{{{zz}|||{{{|{{{{z{{z{}z|{{|{{{{{{{{{{|}||{{||{{{{{{zz||{{|||{|{{{{z|{||{{{|}{{z{{z||}{{||||}{|{{{{{{{{|||}|||z{|{{{{}}{|{||}|{{{{|||||{||}}|||||||{||}||{~}||{|{{z||||||{}}||{{||{|z}|{{}|||{|{||{{{|{}|}|||{{|{{{{{|{|}|{|||z|{z{|{{{|}|}|||{{{{{{{|}|}|||||{{|{{{z|||{{|{{|{{{z{{{||{||}{{|zz{{{{{{{}|||{{{{{{{z{{{{{{{{{{{{{{{{{{{z||{{|||z{|z{{|{|{|{{{{|{{{{{zy||{{{|{{z{{{{{{{{{{||{{|z{z{{{{{|{|{{{|{z{{{{{z{{{|{|{|{z{{{zzz{{{||z|{{{{z{{zz{{zzz{|{{{{z|{z{{z{z{{{{{{{{{{{{z{|{{|{||{z{{{{{z{||{||||{z{{|{||{zz{||{||{{|{z{{{||{|{|||{{{{{{{{|{|||||||{{{{|z|||}|{}|{|{{{{{{{||{{{|||{{{{zz}{}{||}||{|{z{{||||{||}}|{||{{{z|||{}||}|{{|||{{{||||||}}|{|{{||||||}|}||}|||{{{||}||||||~||||{||}{|||}|||{{|{{{||||}{{||||||||{|||}|}{|}|{{|{{{{{||||||}{|z|{||{|}|||{}}|{{z{{{|{}|}||||{{zz{zzzz{||z{{|{|{{{{{{{||{|{{{|z{z{{zz{z{|{{||{z{z{z{{{{{{{{|||{{zz{{z{||{{{{{{zz{zzzz{{{{{||||{{{|{{{{|{z{|{{{z{zzzz{||{zzz{|z{zz{{{zz{{|{{|{{{zyz{zz{{||z{|{zzz{z{zz{|{z{{{|{{{z{z|z{{|{{{z{|zzzzzzzz{{{{{{|zzz{{{{{{{{z{{|{{z{zzz{{}{{|{{}|{{|{{{{{|{z||{|}{{|{{z{|{}|{{|||{{{y{{{{{{{{{{{|{zz{{{{z|{{||{{z{{||z{{{{|{{|}}||{{{{zz{z|{}|||{{|{{{|{|{}{|{||}|{||{{|{}|||{||||{{{{{{{|}{{||}|{{||{||{|||||||}|{{|{||{|}|||}|}|{|||{{|||||}}{||{{{{|{||{||||{|||{||{{|{||||||{||{{z{{|{{||||||{{{z{z|{{|{|{|||||{{{{|{|}|||{{|{{{zzz{z{{{|{|||{zzzzz{{{|{{|{{{{yz|{{|{{|z{|{|{{{{{{{{{{{|{|z|}|{{{{z{z{{||{{{}{{{z{{z{{{|{{{|{|z{zzz{{{{|{{{|{{z{{z|{z|z|z{{|{|{{z{z{{{|||{||{{{{zzz{{{{{||{|{zz{{z{zz{|{|{{||yyz{zz{zy|{|{{||{zyy{yz{z|{{z||{{zz{{{{z{{{{z{{{|{z{{z{z{}{|{{}|{{{{zz{{{{{{|{||{||{z{{{|||{||{|{{{||{{{|{{|||{{|z|{{|{||{{}||}||{{z|{{z{|||{||{{|{{{{{{{{}}||}|||{{|{|{{|}|||||}{{|z{{{||}{{||||{|{|z{||{|{{|~|||{{{}{{{|}|}}}}|{||{{||{|}|}|}{|{{}|{{{|{||}|{||{{{|{|{|||||||{|{||{||{|{{|||||{{{{{{{||}|{|||}|{{{{{{z|{|||||||{{{{||{||}|}|{|{{{||{{z|{{{|}|{|{{z{z{{||||{||{|{zz{{{{{{||{{|||{z|{z{z{{|{{{||{{{z{{{z}{|||||{}z{{|{|{{|{|{||{{z{z{{{|{{{{{{{|{z{z|{{zz{{{{{|}{{z{{{zz{{||{||{zzz{{zz{{{}{|{{{{zzz{{{z{{|||{{||{{{zz{zz{{{{z{z{{{{{z{zz}{{{|{{z{zz||zz{{{{{}|{{|{{{{{||}|{{{||{{{{z{{{|{||||||{{{{{{{{||{{{{{|{|}||z{{{|{||}|{|z{{|{|||{|||||{|zz{||z{||||{|||{{||{{{|{}||||||{|{|{||{{}{||~|}{|{|{|z||||}||}{|{{|{{{{|||}{||}|{||||{||||{}|}||{|{{{|{|}}||||||{{|{|{||||||}||||{||||{|{||}|}||{{{|{{||}}}|}}}{{|{{{{z{|||||}}|{|{|{|{|||||||}|{|{|z|z{{}{|{{|{{{z{{{zz{{{{z||{z{{{zz{{{{|||{|{{{zz{zz{||{{{{}{zzz{{z{z|{|z{||{|zyz{zz{|{{{{{|{z{zzy{zzz{{z{{|{z{{z{{z{{|{z||{z{{{{{zzz{zzz|z{{zzzz{z{{{{|{||{|zzyy{z{{{zz{{|{{{|zz{{zz{{|{{z{{{z{|zzz{||{z{{{{{{zzzzzz{z{{{{zzzz{z{zz{{z{{||{{z{{zy{{||{{{z{{{{|{{{{z{|z{|{z|z{{{z{{{{|{{||||{{{{{{{{|{|{|||{{z|{{z{{{{||}|||z{z{{{{{{{{|{{|z|{{{{{{{{||||{||{|{{z{|{||||{|}||zz{{{{||||||||}|{|z|zz|{}}|||||{{z{{|||{||{|}|||z{{z{{{{}||}||||{|{z{{{||||||{|{z{{||{{|||||}}||{{|{{{z||{{{{||{{{{|{{z{}{{|}|}||{z{z{{{||{|||{{{{{zzz{{|}}|{||{{zzzz{z{z{{{||||{{{zz{{{|{z|{{|{z{z{{{|{||{{|||{y{{{{z{{{{z{{||{{{z{{{{{z{{|{{|{{z{zz|y{{{{{|{z{{{{zzyzzz|{|{{{{z{zz{z{zzz{{{{{zzzz|{z{zz{{{{{{{zz{z{z{{|{z|{{{{z{{zz{z{{||{{|{{{zz{z{zz||{{{{|{{{zzzz{z{{{{|||{{{{{zzz||{||{{{{{z{{z|{|{|{|||||z{{{z{{{{{|{{|}{z{zz|{z{||{||{|{z||{{{z{{{{|}||{{z{zzz{{{|{{||{|{{{z{z{{|{{{|{{{{{{{z{|||||}|||{|{{z|{|||||{{}}|z{{{zz{{|}|{||||{|{{|z{{|{|||||{{|{{{{||{|{||||}{|{{||{{}|||{|||{||z{|{}|||{||}||{{|{{||||z|{}|||z{|{z||}||||||{||{{||z{{|{|}}|}|{{{z{z|{z|||{|{|||{{|z{||||||{{{z{{z{z|{{|{{{{{{{|z{|{z|||{{||{|{yz{{{{|{{||{||z{{{{{{|{||{{{||{z{{{|z{{{{{{}|{z{{{zzzz{{{{{|||{{{zz{z{{|{{|{{{{{zy{{{||{{{|||{{{zzzzz{{{z{{{{z{z{z{z{{z}{{|{|{{{zz{zz{{{z|{|{{z{}{zzz{{{{{{{{{zy{{zzzz{{{{|{|z{{zzz{z|{{{|{}||{{zzz{{z{|{|{{{zz{zz{z{|{{{{{{||{{|{|{z{{||||||{{|{{z{z||||||{{|{|{{{{||{{|{{|||{{{{{{{|||{||||{||{|{{{||{|{}|z|{{|{||||||}|{||{|{{|{{{|}{||}|||{{{{{{{||{||}}|{|{|||{|||||}||{||{}{{|||||}|}{}}|{|{|{{|||||}}||z{||{{{||{|}||}||{|{||{||{|||}}{|{{|{{{{|{|}|}||{{|{{|z||{|||{|{{{z{{|||{|{|{{|{zzzzzzz{{{z{{||{{z{{z{z{|z{}|{||{z{{{{{||{{|||{|{zz{z{z{{|{{{||{{{{z{zy{z{|{||||z{zz{{z||{{{{||zz{{|{zz|{|z{{|{zz{zz{{{{|z{{||{zyz{zz{zz|z{{{{{|{{zz{zz{{{{{{|{{{zzz{{z{{{{{{|{{zz{{{{yy{{{{zzz{zzy|{z{{|z{||z|{y{{{{z{|{||{{|{{{z{{{zz||{{{|{|z{{{{{{{|{|}{|{|{{{z{{{{{|{z{}||{{||{{{z{{{|{}|}z{|{{zz|{|{|{||{{z|{{{{|{|{|{{{{{{{z{{{{|||||{{|{{z{{{|z||{||||||{{||{{{}}|{}{|||{|{{||||}||{|}~|{{{|{||||{||}}}|{{{{|z|{}||||}}|z{||z{|||||}|}||z{{|{|{{|{{}}|}||{||{{|||{|}}|}{|{{|||||}||{||}|{{{|z|{|{|||{||{z|z|{|z{}|{{|||{z{|zz{z{|{{|{|||z{{{z{z{|{|||||z|{zz{{z{|{z{|{|{{z{{z{{{||{{|{{{{{{z{{z{{{|{|||{zzz|zzz{||{|{{|{z{zz{{{{z{{{|{{{z{{{{z{z|{{{{{{{{{y{z{{|{{|{{{{zzzzz{z{z|{{{{|z{{{yz{{z{|z|{{{{z{zz{z{zz{|{|{|{{{{zz{zz{||z|{{|z{||z{zz{{{|{||||zz||z{z{{{{{||}z{{{{{{z{{||||||{||{{z{{{|{{||||{|{{|z{{z|||{|||{{{{{|{{|}|||||{||{{||{|{}||{{}{{{{{|z{{||{}{}|}{{z|{{|||||}|||}|z{|{{{{||{|{|}|||{||||{||||||||}||{||{{|}|{|}}}|{|{||||{|||}|||{{||||||||||||{|}{{{|{{{||{{}}||}{|{{{||{{{|||}}~||{||{{|||||{|}|{{{zz{{{|}}||||{||{{||z{|}||{{{{{z{{{{z|||z||||{{z{{{z{|{{zz}|||{|{y{{{||{|{||{|{{zzzzz{{{|{{||{|{zz{{z{{||{|{{{{{z{{{{z{}z|}|{{{{z{z{{{{||{|{{{z{{z{z{{{{z{{{{{z{z{{{z|{{{{{{|{zzzz|zz{{{z{{|{{z{z{z{z|{{{{z||{zzz{zzz{{{{z{{|{{zzz{zz||{{|||{{{zz{z{{z||{z{{{{{{{{z{z|{|{{|||{{{{|z|{|{||{}{|{{|{{zzz{||{||{||{{{zy{z{|{|{|||{z{{||z{{{||}{|{|{{{||{{||{{{||{}{||{{{|{|{}||}|{||{{{|{}|{}|}||||{z||zz}{|||||||{{{||{{|}{|||}|}||{{||{||{}}||||{||{{||{}|}|}|}|{||z{|||}}}{}||}{|||{{{}}{||||}||{|||{{||{||}{}|{{z|{{||||||{|||||{{{|{|}||}{||{||z{{z{|{|||z{{{{{z{{{{{{{|}|||zzz{z{zz|||{}{||{z{{{z{z{{{{||||{{z{{zz|{z|{{{{|{{{z{y{{zz|{{{{{{z{{{{{zz{{{{|{{{y{z{zzz|{{{{{{|{zz{zzz{z{{{{{||{z{{zz{{{{{{{{|{{z{zzzz{z{{{{|{{zz|zz{zzz{{{z{{{{{z{zzzzz{{{z{{{{z{z{{zyz{z{{{{|z{{{{{{y{{{{|{||{{{{zz{z{||{{|||{{{zzzz{{{{z{|||z{|{z|{z{{|{|{||{z{{{{zz{||||||{{{|zz|{z{{{{{{|{|{{{{{z||{{{||{{{{{|{{{{|||||{||{{{{{||{|{|}||}||{|{{|z{|||{||||}{|{|{{|{}||{||}|{{{{||{|||||||||{{{z{|{{|~|{}|||{{||{||}|||}||}}{{{{||{|{|{|}|}|z{{{{{{|||||}}||{{{|{{{{{||||~||{{{{{{||||||}|{{{{|{|{{||||{{|{z{{{{zzz{{||{{||{||{{{{{{{|{}}}|{{{{{{z{}{{{{{|||z{{zz{{{||{{{|{z{z{{z{{{||{|||{{{{{z|{z{|{{{{{||z{{zz{z{{|{{{|{{z{{z{{{{|{|{||{{yzzzzzz{zzzz||{z{z{{zz{z{|{{{{{z{z{{{zz{{{|{{||{{{{z{{y{z|{|{{{|{z{zz{z{{{{{||{z||{z{{z|{{{{|{{{z{z{z{{z{{{{{||{{{{z|{{{||{||||{||zzzz{{{|{||{||z|{{z|y{|||z|||{zz{{||{|{||{|||{{z{{{z{{z|{{}{{{{{|{z||{|{|{||||{{|{{{{||||{|}|{{{{{{|{|}{||||||||||{{|||}}{}}||{{{||{||}}|}|}{}|{||{|{|||}|||{}{|{{|z{}||||}||}|{z|{||||{||}|{|||{|{|{|{||{|||{{{{|{{{{|||||}||||{|}{|||||{|}|{{{z{{{{{|||||{{zzz{{zzz{{{{{|{|{z{zzzzz{{|||||{{{zz{zy{{{{{|{|{{{yzzz{z{{{{{|{|{{zzzz{z{{{|{|{{{z{zz|{y{{{{{{{{|{{z{zzz{{{{z{z|zzzzzzzzzzz{{{|{zz{zzz{z|z|{{{{{z{zz{zzzz{{{{{{{{zz{{yzz{|{{{{{|{zz{{z{z|{{{{|{{{zz{zzz{z{z{{||{{{{zz{zz|{{y{{{{{{zz{{z{z{z{z{||{z{z{z{{{z|{{||{z{z{zzz{{||{{|||{{zz|{|zz||{{}{{yz{{{{zz{}|{{{}||z{||{{{{|{{{||{{{{z{{{{|{||{|||{{{{{{{|{|{||{||{{|{|{{{{||||||||{z{{{{{|}|||}}|{{|{{|||||{}|||}|z{{z{|{||}||||}|{|{|{{{}|}||||||{{{{z{||||}|||}||{{{{z{||||}||}|{|{{{{|{|z|{|}|{{z{|{{z{{|||||{{z{z{|{{|}{||{{|z{{{{{{{{{{|{{|{|{{{{{{{{||||||||{zz{z{{{{{||{|{{{{{{z{z|||{{z||{z{y{zzz{|||{|{|zz|{{{{{{|z{{|}z{z{y{|zz{{|{{{||z|{z{{z{{z{{{|{{zzz{{zyzz{{{{||{{{{{zzz{{{|{{{|{z{{{zz{z{{{{{{{{z{z{{zz{z{z{z|{zzz{z|y{{{|{{{{{{zz{{{{|{{|{z{|||||{{|z{{{{{|{||{{zz{{z{{|{{{|{{}z{{z{z{|{||{|{|{{z{{{y{|{||}||||{{{{z{{{{{|||{|{{{|z{{zz{|{{||{|{{{{{|{{{||{||||z|}{||{{||||||||{{{{{{{{{||||}|}{z|{{{{|{}{{|||||{{|{||{{||{{}|||{|{{{{||||}||}}|{|{zz|{||{}|||{||{z{{{z||}{|{|}|{||}{||||||{||}||{{|{{{{||{{|}{|||{||z{{}|||}||{{{zzz{|||||||{{{zz{{{z{{||{|{{{|{{{{z|{{{{||{{|z{zzz{z{}{{{|{|||z{{{{{z{{{|{{|{{|z{zz{{{}||{{|}z{{{{{z{{{{{{{{{{|{{zyzz|{{{{|{|zz{{z{|z{{{|{{{|z{{z{yz{|{||{{|zz{zz{z{{{{{|{{z|{z{zyzz{{{|{{{|{{{{z{z{z{{{{{{{{{{zzz{{zz{{|z|{|zzz{{{z{z|{{|{|{{{{y{z{{{{zz{{{{{z{z{z{z{{{{{|{{{{{zzz{}|||||||||{{{|z|z{|||||z||z|{{{{z{{|{}||{|{z|{{{{}||{|||||{{{|{z{|{}}{}|{|{{z|{{|}|{}}}||{{||{{{{|}|{{|{{|{{{{{|{{|{{|||}|{{|{{|{|||}|||}||{|||{{{|||}|}||||||{{{||}}}|}||{{||{|||||}}}|~||{|{{{||||}||{|{|{{{|z|{{||||}|{{{{{|||{|||{||||{|{|z{{}||}{{|{|{{{z{zz||{{{{}}{{{{z{|{||{||}{}{{{{zz|z|{{{{|||{{{|z{z{{|{|{{}{{{|{z{zz{{||{{|{{{zz{|zz{{{{||}z{z{{zzz{|{{{{{{|{{{zz{{z|{{{{|{{z{{zzzyy{{|{{|{|zz{zz{z{{{{{|||{{{zzzzzz{z{|{{||{{z{z{z{z||{z{{|zz{z{{{{z{{{{{z|z{|{{{z{{{{|{||{|{{{{z{{{|{{{{||z|{{z{{{{||z||||{{{{z{|{{{{~}}{|{|z{{z|{|||||}{|{{z{|{{{|{||{|}|}|{||{{{{|{{{}}{||{{z|{|||||||}}{{{{{||}||{|~|||||{{{{{z{|||||}}{z|{|{|{|}|{}|}|||{{{{}|||}|}|||{||{{||{|||||}|||{{}{{||}|}}}||}||{z{{{}||||}|}||{{|}{z}||{}|}|||{{{{{{{}||}{|}||{{{{|{{|{{{|||{{||{z|{{||||||{|{{{z{{{z|z{|{z|{{z{{{z{{{{{{{||{{z|z{{{z{{{{|z|{{{z{{z{z{{|{|{{|zz{z{zz{{|z||{|{{{zzz{{z{{{{{|{z{{{{zyz{z{|{{z{|z{{z{{{{{{{z{|z{z|zzzyz{{{{z{z|{z{zzzz{z{z{z||{|z{{{z{zyzz{{{{||{{zzzzzy{{z{{{|{{zzzzzy{{z{{||||{{{zz{zz{{{|{{z{|{y{z{zz{|{{{{{}{{{z{{{{{{{{||{|{zzz{{{{{|||{{|{{|{{{y|{{{|{|{||{{{zz{|{}{||{|||{|z{{|{{{{||{{{{||{|{{z{|||}|}||||{{{z{{|||||||{{{z|{{|{|}|}|{|{|z{{|{{{|}|{|||||z{|{{|{{{|{|||||||{z{|z{}||{|||}{{|{{{{|{{{{}}||z{z}{{{{||{{||}||{{{z{{||||||||{{|{z{{{||}||{}||z{{{{{{{|{||||{{{|{{z{{{{{|||||{{z{zz{z{{}|z|{|{{|z{z|z|{|{|{|{|{{zz|{z{||{{{{|{z|z{z{|z{{|z{{{{z{z{{z{|{{|z|{{{z{{z{zz{{|z{{{{{z{z{y{z|z{{{{{zz{zyzz{{{{{z{z{{{z{yz{{{{{|z{{{|{zz{{z{{{{|||||{{{{z{{zz{{{{{|z{z{yzzzz{{{{{{{||{{z{z{{zz{{{{{{|zz{{{{{y{|{}{|}||{{{z{{|||||||{|{{zz{z{{{|{||{|{{|{z{z{z||}|{|||{{{{|{{{||||||{|{{|||z{{|{{|||}{{|{z{{z{|||{{|||{{z{{{{||}z||||{||{z{{{{|}||}|{||z{|z{z{||||||||{{{{z|z{{|||{}|{{||{|||{||{|}}|}|||{|{|{|}}||{|||||{|{{{}||||||}|{|{{z|z||{|{|||{{{{{|{|}|||{}|||||{{||{{|{||}||{|{{{{{{||}}{{}||{|{{z{{|||{|||{{{zz{zzzz{{{|{{||{z{{{{z|z{{{||||{{z{|zzz{{||||{|{{|zy{{{{|{zz||}{{{zzzz|{|{{{{|{z{|z{z{|{{{{{{z|z{z{{zz|z{|{||{{{zzzzzzz{{{{{|{zzzzzzzz{{|{{{{{zzyzzzyzz{{zz{|{z{z{zz{yzz{{{{{{{zzzzzz{{{z{{{||zzz{{zz{z|{z{{||{z{z{{{{{z|{{{{|{{{{zz{z{z{{{{{|{z{z{z|{||{|||{|{{|{z{|{|||{||z|{z{z|z{{|||{}{{|{{{z{zz||{{|{||{{{{{{|zz{{{|{||{{{{|||{z|{}}|}||z{{{|{|z{{||||}|{{{{z{z{|{||}|{||||{z|{z|}||||}{{|{{{|||||{{}}}|~{{}{{{{|}|}{{{}||{{{{{{||{|z}|||{{{{{|{}|{||{{}{|{||{{}{|||{|{||{{|z{|{||||{||{||z{|z{{{}|{||}{{||{{z{{{||{|{{z{zzzz{y{|{{|||{{z{{{zzzz|z{|{{|}{z{zzz{z{{{|{{{{{{zz{{{z{z{{{|{{{{|z|zzz{z||{{{|zz{yz{{{z{zzz{{{z{z{{zzy{|{{{{{zz{{zy{zzz{{{{{{{z{z{zzz{z|z{{z{{|{zz{{yz{z{z{|{{{{{zzzzz{z{{{{{|{{zz{z{zyz{{z{|z{{zzyz{zzz|{{||{{zzz{zyzz||z|{|{zz{z|z{z|{{{{{{|{{z{{y{{{{{{{{{{{{{{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|{|{|{{|{zz|{z{{z{|{{{{|{z{{|z{z{{||{|{||z{z{z{z{|{{{||{|{{z{zz|||{|{|||{{{yz{{{z{|{{||{{{{{{{zy{{{{{||{{|{zz{zz{|{{zz{{{{zz{z{z|{{{{{|{zy{{{zz{{|zz{{{{{zzzz{{z{{{{|{|{{{{zz{yzz{z||{{{{zz{z{{{z{{{{|z{{zz{z{z{z|{z{|z{{z{|{{{z{{{{{{}{|zzz{{{{|||{|{||{z{z{{{{zz|{|||{{{{zz{{{{{|{|||{{||{z{{{||{|{}||{{|z{||{||}|z|}}{{{|{{{{||||{|||{||{|z{{|{{|||}}|{|{|{{|||{}||||}{|{z{{{||||||||}{{{|z{||}|{}||||{|{{||{||{|{}}{}{{|||{||}||{|}|{{|||{||}{|||||||{{{z{{{|{{||||||{{||{|{||{|{|||{{|{{{|{{{{||||}|{|{{|zz||{}{|||{{|{|{{{|||||{zzz{{{{z{zz{|{{|{|{|{z{{z{{{{||||{z|z{z|{{||{{|{|||{|{zzz{{{|{{{||{{{z{z{y|{z|{|{|{z{y{{{z{{||z|{{{y{{{z{{{{|{z||{zzzz{{{zz|{{z{{{zzzyzzzz{{{{z{|{z{{z{zzz{{|{{{{{{z{z{{zzz{{{z{|{zzyzyzzz{{{z{{z{{{{z{zz{zz{z{|{||{{{zzzz{{{{z{{{|{{z{{{z{||{{{|{|{{zz{{{{{|{{|{|{{{zz{||{{|z{|||{{z|{{z{{{{{{|{|{{{z|{zz|{||{||{z{z|zzz{{|}|{|{||{z{|{{{{|||{|{{{{{{{{{z}{|||||||{|||{{z{||}||}{|{{{||{{|||{{||{{{{{{||{{}{{|}|||z{|{{{||||||||}||{|{{|}{}|}|||||zz{{{}||{|||}||}|{{|{{{{{z}||||{{{z{{{{{|{|||}|{{z{{{z{|{{{z{||{{{zz{{{{|{|{|z|{{zz{{{{z{{|{{{{{{zyzz{y||{{||||z{z{z{zz{zz{{|}{{{z{{{{z||{{{|{{|{z{z{{z{{z{{{{{{z{{{{{{{{|{z{||{zz{{{{{{{|{zz{{{zzzzz{zzz||{||{z{zz{zzyz{{|z||{zzzzzzzz{{|z||{{zz{{z{zzz{{{{{|{{{z{zzzz{{{{{{{{|z{zzzzzz{{z{{{{z{{z{zz{{{{|{{||zyyz{z{{{{{{|{}{z{{{z{{z{|{||||{z|{zzz{{||{{|{|||z{{{z{zz|z{{|{{{{zz{{{{{{|{||}|{z{{{{{{|||||{|{{{{{{{|{z|||z{|{{{{|{{{{|}||{{||{{|{|{z{}||||||{|{{{{{{{||{||||}||{|{||||||||||}|{{{{{{{{|||}}}|{{||{{{||||{{||||z{{|{{{|||{|{}|||{{{{||{{{z|||}{|{z{z{{{{{{{{||{|{{z|{{||||{|{|{{{z{{zz{{{|||{{zz{{z{{{|{z|||{{{{z{{zz{{||z{||{{{{z{{|{{{{{{||{{zzz{zz{{{|||{{||z{zz{{z{{{|||{|{{{zzz{{|{{{{|||z{z{zzz{{||{|{|||z{z{{z{|{z{y||{z{z{zz{z{{{{|{||{{z{{{zz{{||{|z|{{{zz{zz{{{||{||z{{{z{zz{{zz{|{{{z{z{z{zz|{{|{z{{{{z{{{{{{{{{||{y{{{{{z|{|||{{{|{z|{{z{{|||||z|{{z{{{{{y|{|{|{||||{{zz{{{||{|||{|{{{|{{{{||||{|||{{||{{{|{|z|{|{|{{{||{{|||}||||{{|z|{|||{{|{}}}{{||{z{z{||}|||||{{z|||z|}}||||||z{{{||{|||||||||||||||{|||}{||||{{}{{{||}}{|}}||{{|{{z|||||}}}|||{{{|z||||||}||{{zz{{{{{}||||||{|{{{{z{{|||}||{{||{{{{{|||{{{{|zz{{{{{zz{{{z{{{{|{zzzz{{{|{{||z{z{{{{z{|{||{{{|{{{zz{{z{{|{{{||{{z{z{z{{{{{|{{}{{{z{{z{{{{{|z{||{{zzz{{z{{{{|{{{z{{zzy{{{{{{{{{{{{zzz{z{z|{{{|{zz{zzzz{{{{{{||{{z{z{zz{z{{|zz{||zyz{yzzy|{{{{{|zz{zzzz{{{{{{{|{z{z{{|zz{||{|{{{{{{{zyzz{{|{z{z}{{{{z{{{||{|{||}z|||zzz||{{z|{||{|{{zz{{{|||{|||||{z{z|{|||{{||{|{{{{{{{|{|{{||{zz|{{{{{{|||{|||{|{{{{|{||}|{{|{|z|{|{|{|{||{||||z{{{|z{||}||}}|{|{||{||||{{}|{|||||{{|||~||||}}|{{{{||{||||||{|||{|{{||{||}{|}||{z{{{{|||}||{|}{|||z{{{{||{{|}||{{{z{{{|{||{||{{z{{{{|z{||||{||{{|{{{zy||{|{{|z{{{{{zz{{{{z||||{zz{{{zz||{z|}|{{z{z{{{{||{|z{{|{{zzzz|z|{||{|{|{{z{{{zz|{|{z{{{|{{{{{z{{{{{{|{zzzzzzzz{{|{{z{{{{{z{{z{z{{{{|{|{{{{zz{zzz{{|{|z|{z{zz{zyz{z{{{z{{z{zz{{{{|z||{{{zzzz{z{zz{z{{{||{zz{z{z{{{{{{{{{{{zz{z{{{|||z|{{z{{{z{{{zz|{|||{{{{{z{{z|{{{||{|{|{{{|z{||{|{{||{{{{{|zzz|||||{{{{z{{{{|{{{{{|}{{|{{{{{{|||}|}{{{{{||||||{||||||{{|{z{zz{|{|{}|{{{|{|{{{}|||||||{||{||{|{||{}}|||{{{|||{||}}|||||||||{|||{|||}|}|{{{|{{{||||||}||z|{{{{{}{|{}|}|{{{||{{{{||||||{{{{{{z{{z|{|||{|{|}{{{{z{{|{{{{{{{{z{{zzz||{{{{{|{z{{z{{{|{{{}|{{{{{{zyzzz{|{||z{{|{{z{{{|{|{|{{|{{{zz{z{y{||{{|{zz{yz{{z{|{{{|{zz{{{{zz{{{|z{z{{zzzz{z{{{{z{|{|zz|z{zz{{{{|{|{z{zz|zzz{{{{{|z{{{zzyyzz{{{{{|{|{z{{zz{zzz{zzz{{|{zzz{zzzz{|{z{|{{yz{{{zyz{{|{{{z{z{zzzz{{{{{{{|{{{{{{z{{|{z{||{||zzz{z{{||{|{{|{{{{zz{{z{|{|{{|||{z{{{zzz||||||||z{{{z{{|{|{||{||{z{|{z{z|{|}}||{{|z{{||{{{{|{}||{{{zz{z|||{|||{|{{{{{|{|||{|}||{|{{{{|{{{{||||}}|{z{|{z{}{|{}|{{{z||{{||||{|}}||{|{|{|{z|{|}|}|}{{{||{{|{{||{|{|}{z{{{z|||{|||z{z{{{|{z|{{|{{}|{{{{|z{|||{||{{{z{z{{z{{z{{{{{|{|{z{{z{z|{{||{|{{{{zz{{{|{{|{||||{{z{zz{{|{{|{|||{{{{{zz|z}|{|{|{{zzzzz{{{{|z|}{|{||{z{{{{{{z{|{yz{z{zzz|z{{z{{z{z{zzzzz{{z{{{}||{z{y{zz|||{z{{|{z{z{{zz{{|{z||{{z{{{{{z{{{z{{{z{zzy{{{z{{{{||{{{z{{{{{z|{{{{{{|z{z|{zz{{|{{{|{|{z{{{{{{{{|||||||z|{z{z{{{|||||}|{{{{{|{|||||||{{|{{{|{{|{}||||{|z{{{{{{|{|z||{||z{||{|{{{|||||{{|{z{{|{{|{||||}{|{{|{|z{|}}|||||{{{{{|{}|||||}}||{{|{|||||||}|}|{{}z{|{|||}|{{||{{}{{{{}|}}|}|||{{||{{{||||{|}}}{{||{{{|{{}|||}{{{{|z{|{|}|{|||||{||z{{||||{{||{{|z{z|{{|||||{{|z{z{z{{||{|{{{|{{zz|{{{{{{{||{|{{z{{z{{|z|{|||{{z|z{{{{{|||{||{{{{z{z{z{|{|{}{|{{|z{z{zz|zz{|{{{{z{zzz{{||{{{{{|{zzz{{{z{{{{{{{{zzzzy{zz|{{{z|{{z{{zzyz{|{z{{|{{{{{{z{z|{{{{{{{{{zzz{zz{z{{{{z{{{zz{{zz{{{{{{{{z{{{{{{{{{{{z{|{{{{|{zzz{{|{}|||{{zzz{{{{||{{}||{{{zz{{{{{{||{|{z{{z{|z{{|{|||{|{{{{z{{{{{{|{{|{{{{|{{{{||||{|||||{{{||{{{{||{||{|{||||{||{{{||{{|{||{{||}||}|||{{{{|z{{|||{||||{}||{{{||}|||||}{{||{||||||||||||{|{{{|{{|}{{|||}{z|||{{{||||}||{|{||{z|}||}||}{{||z{|{{{||{|}}|{{|{{{|z{|||{|{|{|{{z{{{{{{{{z{{{z{{{zzz|{{{{z|{zzz{{{{{{||{{{|{z{zz{{{{{z|{{{{{z{|zzz{zz{{{y{{{|{zzz{zz{{z|{{{{{z{zz{|{{|zz{{{zzzzzzz{zzz||{|{{{{{y{{{zz{{{zz{|{zzzzzzz{{|{|{|{{{{zzzzz{|{z{{{{{{{{z{zzzz{{{{{|zz{{zzy{{{z{{{{|{{{zyz{zzzz{z{z{yz{zz{zy{{z||||{{z|zzzz{|{{{|{||zz{{{z{z||{z{}{{{z{y{{{z{|{{{|{{|{{{{{{{{|{|{}|{{{{zzz{{z}{|||||{{{z{z{z{}|{{{|{{{{{z{zz{|||||}|{{z||{{{|{{|{|||{|{{{|||{|||{{|||{{||z{z|{{{||}}{|{{{|||||{|}|||}{{{{||{{}|||{||||{{{zzz||}}||{|}{{{{{{||{||{{}|||{}{{||||||||||{{|{|{{{|{|{||{|||{{{{{||{||z|}{{|{{{zzz|{{||z||z{{{zzzzz{{|{{zz{zz{{z{zz|zz||{{{{zzz{z|{{{{z||{{{z{z{{{|z{{{{|{{z{{{{{y|{{{{z|{zy{{z{{z{|{{{{{{z{zz{zzzz{{z{|{{{{{{{z{{{z{{{{{{zzzzz{|{{z{{{{||{z{zz{z{z{{{||{{z{{z{zzzz{{{{{|{|{z{zzyzz{zz{{{{zz{zzz{{{{z|{{||{zzzzzzzz{|{|{|}{zz{{y{z{|{z{|{{{{{{{{{z{{{{{{||z{{zz{{z||{|{{||{{{{{z{{|{{|{|{{{{{{{{{{{|{|{{|{{{{|{{z{|||{|{||{{{{z|{||{||||||{{|{{{{{|{|||{}|{|{|z{{{|||||{}||{{|z{{{{}|{||||{{{{{{|{{|{||}||}{{z{{{{{}{|||||{|||||{{||}{{||||{|{{|{{{|{}|||||{{{{{{{{|{|||||{|{{zz{{{{|{|||||{{{{{{{{|{{|{}|{|{{|{z{|{{{{|{{z{{{z{z{z|}|z|||{{{{{z{{||||||||||zzz{{{|{{z{|||{{|z{{z{||||{|{{z{{zzz{{zz||||{|{{{{{{z{{|||{{{{{{{z|{{{z||{{{|{{zzz{z{z|{{{z{{|{zz{z{{z{{{z{|||{{{{z{zz{z||{{||{{z{yzzy{|{{||{{|{{{{{{{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{zzzzzz{||{|||z{{zz{{{{|{{z|{||zzzzz{{z{{{{{}{|{{{{z{z{z|{|{{|||{zzz{{zz||{{{{|{{{zz{z{{|{{{{{{{z{||yz{{{|z{|{{z{z{zzzzzzz|z{{{{z{zzzzz{|{{z{|{zzz{zyzzz{z{{{z{zz{zzz{zz|zz{{{|{{y{{z{yz{{{{{|yzz{z{{z{z{{{{{|{zzzzzzzz{|z{{z{{z{{z{{z|{{{||{{{|{z|{z{{{{{|||||{{{z{{|{{{|{{||{||y{{z{{{{{|{|{{{z{z{{{z|{{{|{}{z{|{z{{{{|{|||||{{|{|{z{|{|||||||zz{|{{{{{{||{}}{{{|{|{y}||{||||{{z{{z|z|||{|||||{||{|{{||{{||}}|{||||{z|}{{{||||{{|{{|||||}z||{|{|{|{{{||{|{{|||{|{||{{{|{|{}}|{|{z{{z|z|{||{{|{z|{{{{z{||||||{{||z{|{z|}|{{|||{zzz|zz{z|{|{|{{{{z{zz{{{{{{|{{|{zzz{zz{{{{{}{|{|zz{{z{yz{{{|z{{|{{{yz{z{{{{{{{{{{zzz{zzz{{{{{{{z{{{{{zz{{{{z{{z|{{{z{zz{{zz{{{z{zzzzz{{z|z{{{{{{zzzz{zz{{{z{{{|{z{{yzzzz{{|{|{|{zzzzzzz{|{z{{{zzz{y{zzzz|z|{{{{{z{{{z{z{{{{|z||z{{z{z{{{{{{|||{{z{{{{|y|{|{z|||zzzz|z{z{}{|{|{|{{{{{z{z{{{|{||{{{{|{z{z{||||{|{{{{{{{z{||{|{|{|{|{{{{{|{{{|}||}{{{z|{||{|||{||{|{{{|{z{|{||{|}|{{{{{{{{{|||}{||{z|{{|||{{|{|}}}|{z{|{{{}}|}|}|||{|||{{{{|||{}|||{{{|{||{|{|{|||||{|}{{|||{}{||}|}{{|{{{{|{|||}|{{{{z{{{||{|{{{|||{{{yzz{{|z{{{{|z{z{{y{{|{{{{{|{{zz{{z{{{{{{{{|{{zz{{{z{{{|||||{{{{{{{z{{||{{|{{{z{{{zz{{{{|{{{{{z{{zzz|{{zz{|{{z{z{{{z{{{z{|z{{{{{zzz{{{zz{}{{{zz{zzz{{{|z{{{{z{z{{|z{{{{{z|{{{z{{{{z{z|{z|{{||{zzzzzz{z{{z{|{{{zzzz|z{{{{|{|{z{{{{zzz{{{{||{||zz{{z{{{||{{{}|{z{z{{|{{{||{|}{{{{{z{z{||{{{{|{||{||z|{{{{|{||{{{{{z{{{|||{||{|}z{{|{|{|{|{|{|z{{{z{{|{{|||||||{{{|{{|{||{||||{{z|||z{|{}||}}{|{z{{||{|}||||{}||{{|{{|{|||||||||{|{z|{||}||}}|}|{|{{{|{|{|||}|||z{{|{|{{{|||||}|{{||{{{}{{|||}}|||{|{{{{|{{||||||{{{{z{{||||||{{|{{{z{z{{{|{{{|zz{yzzz{z|{{{|{{zz|zzyz{{{|{{||{{{zzzz|z|{||{{||{{{{|zz{{{{{z{|{|{{zyzz{y||{{{||{zzzzzz{{{{{z|{{{{{zzzz{{||{{{{{{{{{|{{z|z{|{{{{z{{{zzz{{{{{{{{z|zz{zzzz{{|z|{|{{{{{z{zy{{{{|{||{z{z{yzzz{||{|z|{{{zzzz{{z{|{|{{{{z{{{zz{{{{z|||{z{zz{{z{}|||{|{{{|{zz{{{{|z||{{{{{{|{z|}{{|z{}z|{{{|{z{{}|{{||{|z{{{{{{{{|{||||{z{{{{|{|||{{{{{{{{{|{{{|{{||}|{{z{{{{{||{||{||{}{{{z{|{|||{{|||{{{{|{z{|||}{|}|{|{{z||{|{{||}{|||{|{|||{}{|||}}{{{|{{{||||||}}||{|{}|{|z||||{}}}|||||{|{|||{||}|{|||{|{||||||{||{{|z||{|||{{{|{{z{{{{{z{|{{{{{|{{y{z{zzz}z{{{{{z|zzz{{z{{{{{|||{zz{zz{{|{{{z{|{z{zz{z{zz{||z{||z{zz{zzzz{{|z|{{z{{{zzzzz{{{{{{{z{{z{{z{zz{zz{{{{zz{{zz{{z{zz{{{zz{zzzz{{|z{{|{{{zz{z{z{{z{{|{{{{z{yz{zzz{{{{{|{zzz|{zyz{z{{{{z{{{zzyz{yzzzz{|{{zz{{{{zzz{||{{{|z{zz{y{{{|||{|{{{z{{z{{{{{|{{|||z{zzz{|{{{|{{|{|{z{{|zz{{{{{|z{{{{{{zz{z|{|||{}|{{{|{z{{{{{{{{{{{{}{z{{{|||}|{{{{{{{{{|{||{|{|||{{{|{{zz||||{|||{z{|{|{|||{{}{||{{{|{||z|}{||}}|{{{{{{{{|}|}{{|||{{|{{{{||||{|{||{{{{{{{||||||{||{z{{{z{|{|}{||{{{{{z{{{{{|||{|{|{{|z{{{z|{||{|||z{z{z{{{||{{|{{{{zz{{zy{{{{{z|{{z{z{zz{{{z{{|||z{zzzz{z{z{{|{{{{{z{{{{{{{||z|{{{{zzz{{z{z{{{{{|{{zy{z{{{{{{{z{{|zz{zzzzz{{z{{{{{{{{z{{z{yz|{{{|zz{z{{zz|{{{{z{|{{zyz{zz{|{|{|{{{zzzy{zy{{{|{|{{{zz{zzzz{{z{{{{z{z{{zzzzy{z{{||{{{{{{{{z{{{{{|{|{{{{{zz{z{{{{{{{{{z{{zzz{{{{{|{|{{zz{{{z||||{{{|{{|z{z|{{{{z{|||{z{z{{{{{|}||{||{{{{||zz{|{|{z{|||{{||z{|z{||{||{z|z{{{|{|{{|||||{{{{{{{{}||}|||{{|{||{|{}{|}}||{z{{z||{}||{|||||{{{z{{{|||||||}}{{|{{{{|}{|||||{{{{{{||{{||}|}|||{{|{|||{{|}{{|{{{{|z{{||||{{||z{{zz{{z{{|{{||{|z|z{{z{{|{||||zz{{zzzzzz{{|{|{|{{zz{zzz{{{|{{|{{z{{zzz|{{|{{{|{|z{zz{{{{||{z{||{zz{z{zz{|{{{|{|zzz{{{z{{|{{{{|{|{zzzz|zz{{zz{{{z{{z{{zz|z{{{z{{z{zzzz{z{{{{||{{{{{z{{yz{|{{||z{z{zzy{z{{{z{z{{{z{z{zzzy{{{z{{{{zz{{{{z{z|{{{|{|z{zz{{yz{z{|||{|{zz{{z{{{|{|{||{{z{zz{z{{|{{{|{|{{{{z{{{|||{|||{{{|{z{|z|||{|}{|zz{zzzzz{||{|||{{z{{{{zz{|{|{|{||{|{{{z|{|||||||{||{{{|z|{||{||}|{{{{|{{{|{||{}||{{{|{|{}|{}|}|{|{zzz|||{|{||}|||{{{{{|{{|{||||{{{{{z{{{||{{|{||{||{{|{z{{{{{{{}|{{|||{||||}|||}{{|{{{{{{|{}|}||{|{{{z{{{{{|{||{{{{z{{{{{{z{|{{{{zzz{zzyz|{{{{{{{{z{|{{{{{{{{|{z{zz{z{zz{{{{{{|{{zz{{z{z{|{{zz}{{{zz{{z{}{{|{{{|z{zzz{{zz{{{{{z{{zzzz{yz{zzzz{{|zz{z{{zzzz{{{{|{{yzzzzzzzz{z{{{z{{y{zzy{{{{{{z{{{{z{zzzx{z{{z{|{{zzzzz{zz{{{{{{{{{zy{z{zz{{{{{|{zzz{{zzz{z{{z{||zz{{{z|z{{|{{{{{zz{{z{{{{{|||{{|{{{{{{{{|{|{||||{{{z{zz{||z|||{{{||{z|zzz{{|{||||{{{{zz{|||{{||{{z{{{|{z{|||||||{{|{{{{|{{{{{|}|{{{|{{z{z{|||||||{{zz{{{|||}|||}|{{{{{|z|{|{{}}|||{{{|{|z|{{|||||{{z{{{{}||||||||{||||{|{{||{{|}{{{z{{{|{}|}{|{|z|{z{z{{|}|{||||||{{{{{{{|||{{}||{{z{{{{|{{||{{|{{zzzy{z{{{{|{{|zz{z{zz{z||z|{}|{{{z{{z{zz|z{|{||z{zz{zzzz{|z{|{zz{zzzzz{z|{{{{{{{zz|z{zz{{{z{{{{{{z{yzz{|{z{{{{z{{z{{zz{{{{z{{{z{zy{yz{{{|{{{|{{{zzz{zz{{{|{{{{|z{z{zzz{{{{{{{{{zz{zzzz{{zzz{z{{z{{z{zz{{{{||{{{zzz{{{{{{|{{||{{{{z{{{{z{{{{{{{z{|{zz|{{z|{|||{{z|z{{z{{|{{||}|{{{{{z|z{{z{{|{{|{{{{zzyz||}{||{{{z{{{|{||{{||{}z{z{{z{z|{{|z|}||{{{{{|||{||{{z|{{{|{{zz{{||{||{|z{{}{|{||}z|}}{{{|z{{{{|||{|||||{||{{{|{}}|{{||{{|{|{|{|{|||}|||{{{|{{{||{{|{||{{|{{{{{|||||{|{|{z{z{{{{||||||||z|{{{{z{|||z{||{z{zzzz{|{{|{{{{{{{z{{{zz{|{{|{||zz{{zz{{{{|{{{{|zzy{{z{{z{z|{{{{{|{{zz{{||{{{{{|{{zzz{z{{{|{|||z{{zz{{{z{{z{{{{zzz{{{{z{{{zz{{|z{{zz{z{{{{{{{{{zz{{{zzz{{zz{{|{zz{zz{zz{{{z{{{{z{zzy{{z{{{zz{{|zzzzzz{zzz|{zz{{z{z{{z{zz|{{{|{{{z{{zz{zz{{{|{{|zzzz|z{{|{{{{{{|{{{{{{|{{|{|z||}zz{zz{{{{||{{{}|{{{z{{z{{||{||{|{z{{{{{{{||{{{|}{{{{{{|{|||{||}||{|z{|{{||}||{||{{{||{|||{{|||||{{|{{z{z||{|||}||{{{{{{{}|{|||||{{{|{{|||||{|||}||||{||{|}{||{||}{{{|{|{{|}}|||||{{{|{{|{|{{||}|||{{{{|{||||||||{z{{{{{{{{{|{{}|}{{|{{{z|{{{{{{}{|{{{z|z{|||||{{z{z{zz{z{z{{zzz}z{z{zz{{{z{z{{{{|{z{{zzz{{{{||{||{zzzzyy{{{|zz{|{{zzz{yzz{{z{|{|{z{z{z{{|{{{{{|{{z{{yz{z{{{{{||{z{{zyz{z{yz{z{|{{{zyzzzz{{zz{{{{zzzyz{y{z{{{z{|{{{{zzyzzz|||z{{{{zzz{{zzz{{{z{|{{|zz{z{zy{||{||{{{yz{|{z{z|z{||{{{zz{{{y{{|{{{|||zzzzzz{{z{z|{||zzz{{{zz{{|{|||{{zzz{zz{{|{{|{|{{{{{z{{z{{{z{|{{{|{{{{{z{{|{{z{|||{{{|z{{}|||||{{{{{{{{{{{|||{}||z{|{{{|z|{{{||||z{||{{{{||||}}|{{{{z{|z|}|||||||{{|{|{|}|{||}|}|{{{{{{{||{|{}||{{{z|{z{{|{|{}|||{|{|z|||||||{}|{{{{{|{zz}{{{{}|||{z|zzz{|z||{}{{{{{{{{|{z||||{|{{{{{z{yz{{{{{{|zz{{z{zz|{{{||{|{{|y{{{zz{{{|{{|zz|{zz{zz{{|{{{{{{yyzz{{{{{{||||{z{z{{zz{|zz{{|{{zzzyzz{{{|{{{{{z{zzz{zzzzzz{zz{{z{y{zzz{z{{{{|{|{z{zzy{zz{{z{{{|{{{yzzzz{{{z{{|zyzzzz{zz{{zzz|{zz|z{zzyz{|z{|{|{z|z{zz{z{{{{||{zz{{{zzz|{{{{{|{{zz{zz{z{|zz{||{{z{{zz{z{{|{{{|{z{{{{zyz{{{{{|{{{{{zz{zz{||{{{{|{zzz{zzz{||{|{|z{{{z{{z|||{{|{{{{|{{z{|{|||{{{|{{z{{{{zz||}{|||{{{{|{{{z{}{||||||{{{{{}{|{{|||}||{||z||{||||||}|{{{|z|{{|{|{||||{z{|{{{{{|||||||{z||{|{|||{{|}||{{|z{{z{{{||{|{{{|{{{||{{{{}{{{|{{{{|z{{|{|{|{{}{z{{zzz{||{{{{{|{{{{{{zz|||{{|||{{z{z{{{||{{{{||{{{{{{{{{{||{{{{{{{{{{{{{z|{|z||{||{{{zyz|{{|||{{z{z{zz{|{|{{{|{{z{{z{z{{z{{{{{{{z{zzz{z{z|{{{|{zz{{{|z{{{|{|{|zzzzzz{{z{{{z{{|{{{z{zz{zz{{{}z{|{{zz{{z{{|{z{{{{zz{{{zzzz{{|{||{{zz{{z{{{{}z{|{}|{{{{{||{|||{||{{z{{z{|{{{{|||||{z{{|z{{{{|}|{|{|{|z||{{{|||{{|||{{{{{{{{||}|{{|{{|{{|{|{|}||||||{|{|{|{{|{|}}|||{{|{|z{{{|||||||{{|||{{|||}|{||{{{|{||{{|||}||}{{{|{{|{|}|}|{}||{{{{{{{|{|{|}{||{{|{{z{|||{}}{||{z|||||{||}}||||||z{{{|{|||{||||||{{{{z{}|{|{}{{{{z|{{{|||||{{||{zz{{{z||{{|||{z{z{{z{{{z{{{{}||zzzz|{z{{z{{||{|zz{{{y{|{{|{{||{{{{zzzz{{{|||{|z{{zzz{z{{|{{{{{z{zyzz|{{{|{z{|{{{{zzz{z{z|{{{{{zzzz{z{z{zz{z{{{{z{{zzz{{{{{||||z{{zzz{zz{{{{{|{{yz{{y{yz{{{{{{{{zzzzzzy{|{{|{{|{z{z{zzz{|{{{|{{{zzz{zz{}{{z{{{|z{{{{z{{z{{{||{|{{{zz{{{{{{{{||{{{{{|{{{z{{|{{||{|{|zz{{{{|}{||||{{|{{z{|||z|{|{{|{{{{|z{}||{||}{|{|{{|||||{|{|{{{{||{{||||||||{|{{||{|{{|}|||{||{||{{|||||}||}|||{{{{{{{|{}|||}|{{{{{{{}||}||}}||{|{{{|{|||{}|||{|||}{||}{{{||}|||{||{{{|{|{||||{{{{{{z|}||}||}{z{{zz{z{{|}|{|zz{z{zzzzz{{{{y{|zzzz{{z{{{{z||{{z{{z{z{y{z{{{{{{z{{zzz{z{z|{{{{|{z{z{{{y{{|||{{{zzz{zz{z|{{z|z{{{z{z{zy{{{|{{{z{yz{zzzzz{z{{z{z|zzz{zz{zz{|{{|{{{{zyz{yz{{{{{{{|zzzzyzzzz{{{{z{z{yzyzzzyz{{{z{{z{zzz{z{zz{{y{|{|{zz{zzz{{z{zz{{{{z{{|z{z{{{{{{{|{{{zzzz{z{{{{{{|{z{zz{z|{|{|{||{z{{z{z{{z|{||{{{{z{zz{zz|{||{{||{{{{{{y|{|||{{{{{{{|zz{{{{||||{|{{{{{{|{{||}||||z{{{{{{z{{{{|}||{z{|{{{|{|||||||z{{{{z||||||}{|}|{{|{|{|{{}|{||{|{||{{{{{|{|||||}{{{{{|{{}||}|{|{|{{{|{|{{{||||}z{{z{{{|{|{{{||{{{{{{{{z||{{||{{|{{{{zz{{{{{|{z{z{z{zzzz{|{{|{{{{{{{{zz{{{{{{|{|{{zz{z{y{|{{{{{{{yz{zz{{z{z|{{|{|{|{zz{y|{|{{{{|zz{z{z{zz{{{z{|{z{z{{zzz||{{z|z{{{z{zzzy{{{{|{||{z{yzz{z{z{{{z{{zzz{yzzzz{{{{|z{z{{zzzyz{{{{{{{{{z{{zzyz{{{{z{{{{{z{zz{y{{z{{|z|{z{yz{zz|{{{{z{{{{{z{{z{{{{{z|||{{{{{{{zz{{{|{{|z{zz{{{z{{{|z||{{{z{{{z{z|{|||{|{|{{{zz{||{|||{||zz{{{{{{}{|{|{{{z{{z|{{{|{{|{||{{{{{||{|||}|}|||z{{{{{{}|{{{{{||{{{|{|{|{|{|||}{{|{z{|||{|{||}|{{{{|}z|{{|||}}||{||{|z{{{||||}|{{{z|{|||{{|{||}{{{|{{{|{||||||}z{|{zz|{||{z{|{{|{{{{{{z{|||{||{{{{|{z{z{{|{{|{z{z{|zz{zz||{||{||{z{zzz{{{{z|{||{{z{yzzzz{|||{||{{zzz{z{{z||z||}{{zz{{{y{|{|{{{|{{zzzzzyz{{z{||{{z{{zzzz{{z{{{{|zzzzzzyy{{{{{|{|{zz{zz{z{|{{zz{{{zzyzzzz{{{{{{|{{z|zz{{z{{{{z{|{z{zzz{zzz{{{{z{{{z{zz{{zz{{{z{{{zzzz{{zz{{{|z|{|{{{{z{zz||{{{|{{||{|{zzz{{||{|{|z|{{{{{z||{{{||{||zz{zz{{|{|{||{{z{z{zz|{{{{{{}{{{{|||z|{{|{||{{|{{{{|{{|||{||{|{{{{{{|||||}{|{|{|z{|{z{||}{|||||z|{{{{{|}|{{}{}{z{{z{|{{{|{||}||{z{z{{{{}|||}||{{|||{|{}|||}}|||z{|{{|||{||||}||{{{{{{{{|{||{{}{z{z{|{{{|||{||||{{|{{{{|||||}}||{|z{{|{{{|{{{{{{zz{{z{z|||z{{{{{{z{zz{z{|{{}|||{yzzz{zz{z{{|||{|{{zzzyz{z{{zz{{{{z{zzzzz{z{{{z}zzzz{z{z{{zz{{{z{{{zzzyy{z{zz{{{{z{yz{zzzz{{zz{|zyzzz{zz{z{|z{{z{{yzyzzzzz|z{|||z{{zzzzzzz{zz{z{{zzyz{{z{z{z{{{{{{{zyzzz{z{{z{{{{zz{{zzz{{{{{z{{|y{{|{{z{|{{{{||{{{z{zz{{|{z{{||{zz{{z{z{{{{|{|{{z{{{z{z{{{|{{|{{z{{{zz{||{{{||zz{{{{{|||{{{|{|{{{{|{||z|{||{|{|{{{{{||{{{{|{|}{|{z{{{{{{{|{{{{||z{{{{{{|||{||{||{zz{{{{{|{|}||||{{z{{{zz|||{}{|{{{||{{z|{{{||{}{{{{{zz|{|{{{|||||z{|||z}||{|||{{|{zz{{{{{{{{{|||zz{z|z{{{|{||{|{zz{{zz{||}|{{{{z{zz{zy{z|{||{||zzz{|zzz{{{|{{{|{z{{{{zz{zz{{{|{{{{{z{zz{{{{zz{|{{{zz{zz|{zz{|{|y{z{zzzzzz{{z|{{{zzz{{zz{{|zzz{z{{z{yzzz{zz{z{|{zzz{{z|z{{|z{{{{z{{zyzy{z{{z|{|zzzzzz{{{{{{{z{{{{zzzzzzzzz|{z|{z{{yz{zyz{{z{{{{|zyzyz{zz{{{{{{||{zzz|{zz{|{{{{{{{z{{{z{{{{{{{|{{{{{{zzzz|{{{{{|{{{{{{z{{{|{||z{|{{zzz{{z{||{||{{z{{|{zz{{||{{}|{zzz{z{z{{z|||{{|{{{{z{{{}|{||{{||{{{{{{z{{|||||{|{{{{{zz|{|}|||{|{{{{|{|{||{}}}{|zz|{{|{||||}{|{|{{{z{{{|||||||||{{{{z|{|{|||||||{|{z{{|||{{{|||{{{z{{{{{|{|}||}|{{{{{{z|{|{{{|{{{{zy{{{{|{|{|{{zzzzzzzz{{{{|z|{{z{zzzzz{{{||z{||z{yzzzz||z{||{{z{zz{{{{{z|{{z{|{{zzyzzz{{{|{|z{{zz{zzyz{{{{{{|{zz{y{{z{{|{{{{{zzzzz{{z{z{{{zz{{z{zzzyzzz|{{z{|zz{zzzzz{{z{{|{|{{{zy{{zzz|{||{{{zzzzyzzzz{z{z{{z{z{zzzzz{{z{{{{{{{zz{zzz{z{{z{|||zzz{|{z{|{{|{|{{zzzzz{z{||{|{||{{zzzzzz{{{z{{||{{zz{z{zz|{|{{{||{{{z{z{{{||{{|{{{{{{{{z{|{zz{|}{{{{{{{{{||}|{|{{z{{{|{z|{{|{|{||{{|{{{||{||}{|y|{{{{{||}}|||||||{{{|{{{{||{{{|||{|{||{{{}}|}||||{{||{{z||{{||}|{{z{||{||||{||}|||{{|{{|{}{||{||{{{z{{{|{{|||{|||z{{{{{z||{||{|{z{{z{zzz|{|z{{{zz{z{{{zz|{|{{{|{z{{{|z{z{|{z|||{{zzzzzzzzz{{{{{{|{zz{zzz{z{{{{{z{{{z{{{{{z{{{{{z{z{zz{zz{|{zz|{||zzzzzzz{{{{z{z|{{{{zzzz{z{|z{{{{zzzzzzy{z{{{|z{{z{{zzz{{{{{|z||{z{{yy{z{z|{{||{z{z{zzzz{|{{{{z}{{zyzz{yy{z{z{{zzzzz{{zz|{z{{{|{{zz{zz{zz{{{{|||{{|{{z{zzz{{||||{z{{{{{{{{z{{{{|||z{{{{z{|z{|{{|z|{z{zz{{{|{|{||{zz{{{{{{{|||||||{{z{|{{|{|{|{|{||{z{{{||{{{|||||{{|{{z{{|{||{|||{zz{{{{||{|{{{{{|{{|||{|||}}||{|{z{z|{{{||||}}|{|||{z{{|{{|{||||{{|{{||{|{|||||||{{|{{{||{||||{{{{z{{{{{|||||||{{{z|{{y|}|||{||{z{{z{{z{|{|{{{zz{zz{{zyz{zz{{{{z{{zzz{z{{zz|{{|{{yzzzzz{{{zz{{{{{zz{yzz{{|{z{{{{zzzzyzz{z|{{{{{zzzzzy{z{{zz{z{{zzzzzzzzzzz{{{z{zzzzzz{zz{{{z{{|zzzzzzyyzz{zz{zzz{{{zzz{z{{{|z{zzzzyxzz{{{{{z{z{zyzzzyzyyzzzz{{zz{{zzzzzz{zzz|{{zzyz{{zzz{{z{{|{|zzz{zzzz{{{{|{|{zy{{y{z{zz|z{{|{{{zzzz{{{{z{||z{zz{{z{z{{||{|{{{z{zz{yz|{{z{{|{{{{{{zzz|{{{{{{{{{zz{|z{{zz|||||zz{z{z{z{{{|{{||{{z{{|{{|||||{|{|zz{{{{{||{|{{{|z{|{{{{{}}{{|||||{|{z|zz{|}|||}|}{{zz{{z|{{|{||{||{zz{z||||||||||{{{{z{{{|{{{{||{z{{zz{z{{|}|{}|{{{{zz|{z{{{|{|z{{{{{zzz{{{|||{{zz{z{z{z|{|{{|z{{zz{{z{z{{{{{z{|zzz{zz{z{z{{|||}{zz|zzzz{{{|{|{||z{{z{zy|{{{{{{|{zzzzz{z{{{{{|||{zzz{zzy{{zy{{|{zz{zz{zzzzz|z{{|{z{z{zzz{{z{{{|zzz{{zzyzz{z{zz}{{z{zyzzzz{{|{z{{z{{{{zyy{{{{{{z{zz{y{zzyz{zz{|||zz{zz{zyz{{z||{{{{{z|y{z{{||{{|{zzz{{zzz{||{{{|{{z{z{z{{{{{{{||||{|z{z{{{|{|{|{{{{{|{y{{z}|{{||||{{{z{{{|||{{|{{{|{{{z{z{||{}|}|{||{|{{{||{||||||||{{{{{{|||{||||{{|{{{{||||{|{||{{{{{||{||||||||{{z{{{{{}||||{|||||{{|{|{|{|{|{|{{{{{zz|||{||||{{z{{zz{|{}}{{||{{{z{{z{{|}{||{|z|{{{z{{{{z{|}{{{{|{{z{z{z{|||{|{zzz{{{zz{|{|{{|{{zz{{z{{|{{{{||{{{zy{yzzz{{{{|{{{{{{zz|z{{{z|||z{z{z{{z|{{{{{{{z{{zzzzz{z{z{{{zz{{z{zzz{{{yz{{{{yzzzz{{{{{|{{{|zzzzzzzz{{{zy|zzzzyzzzz{{||{|{z|zz{zzyzz{{{{{{{{{z{zzz{yzy{{{{z{z{zzzz{zz{{{{{{|{zzz{{{zz|{{|{|z{zzz{y{z{{{{{{|||{zzzz{{{{{{||{|z{{{z|{z{{|z|}||{{{z|{z{|{{{||{{{z|{zz|z|||{{|{{|z{{{{z{{||{|{||{{{{{{|z{{|}|}}|{{{{{{|{{||}{|||z{{{{{{zz{|||||||z{z{{{{|{||||||{{{{{||{{|||{||||{{z{{{{{|||||{||{|{|{|{{|||{|}}{{z|{{{{||||||{|{}|{||{{{{||{|||z||z{{{{{{||||}|{|{z{{z{||{|{||{{z|z{z{z|||{{|{{z{{zzzzz{{{{{{|{{{{{z{zzz{{{{{{||{zz{z{z|{{|{{||{{zz{{z{z{{{z||{{{{z{y{zz{{{{{{|{zzz|zyz{|{zz|{{{{{{zzzz{{|{zz{|zz{zz{yzz{{{{z{|zz|zyzzzz{zzz{|{{z{{zzz{{{{{z||{{z{yz|zz|{zzzz|{{{z{{{zz{z|z{{{z|zzy{zzz{{{{{{{{z{{zz{zz{|z|{z|}|{z{{{{z{{|{z|||{z{{{{zz|{{|{{{|{zzz{{{||{{{{{|{{{|z{zzz{|{{{|{{|{{zzz{{{{{{|{|{|zz{|{{{{||zz{{{{z|{|{{{{{||||||z{z{{{{||||{{||||{{{|z{{|||{{{||{{{{{{|{|}||||||{{|{{||{{|{||}{||z{|{|{{{}}||||||{{||{{{||||{||||{{z{z{{{{{{|}}||{{{{{{||{{|||||{|zzz{{{|{{||{|||{{|{{{{{|{{{{||{{z{{{{{{{||{||{{{z{z{{z{z{{|z{|{{{{zz{z{{{{|{{|{zzz{z{z{{{{{||{{z{z{zz{{{{{z{{||{yzz{zz{{{{{{|}zzzy{z{zz{{{{z{zz{{zz{zz{{{{z{{{{{{z{{{zz{{{z{{|{zxzzzzzzzz{{{{{{zzzy{zz{{{{|}{{{z{zyzzzz{{{|{|{zzz{zyzz{z|{z{z{zy{yzzzzz|{{{{||z{{z{zzy|{|z{{|{z{{y{z{{z{{{z{|z{z{z{{z{z{{{{|{{zz{|zz{{|{{{{{||{{{{{{{{{|{|}|{|{{z{{{{{{{{{{||{{{zzz{z{{{{{{|}{|{{{{z{||{{{||||z{|z{{|z||{}z{||{{{{z{{z{||}{{||{z{{z{{{|||{|}||{{|{{|{z||{{{||||{{{{{|{|||}|{||{{{|{{|{{}||{{{|{{{z|{{{{||||}{|{{z|||{||{{}{{|||z{{{{|z{{||||||{{{{{{{|{|{|{{{||{{{|{{zz{{{{{{zz{zzz{zy{|{zz|||{{{yzzzy{{{{{||{{{zzz|zz{|z{|{{|{y{zzy{{{z|{{{||zz{{z{zz{|{zz{{{{{y{{{{zz{{y{{{{{{{{zzz{zz{z{{{{{|{zzzz{{{zz{{{{y{zz{zzzz{z{{{z{{{zyzz{{{{z{{z|zzzz{zzzz{{|z{{|{y{{{z{{y{{{{z{{{{z{{{z{zz{{|z{{z{zzz{zy{||{{{{||{{zz|zz{|{{{{{||yyzz{{{z{{{{{|z|{{{{z{{{{{{|{||z{{{{{{z{|{||{|||{{{{{{zz{{|{|z|{|z{{{z{{{{{|{}{{{{{{z{z{|{{|{|{|{{{}{{{{||}||||}{{||z{z{|{}|{{|||z{{|{{{|||{|}|{{z|{{||{{||{{|}|||{{{|{{||{|}}|||{|{{{|{{||}|||||{{||{{{{{|{{}||{{z|||||{|||||}||{{zz{{||{|{|||{|{{{{{{z{|{|{||||{{{z{zz{|{|||{{zyzzz{zz{|{z{|{{{yzy{{{z|{|{{{{|z{zzz{{{{{{{{{|{{{zzzz{{{{|{zz{|z{|zzzzy{{{{{{{zzz{yy{zzzz{{{{{z{z|zzzzz{{|{z{z{y{zyzz{z{{z{{{{z{{yz{zz{z{z{z{{{zzyzzzz{{|{z{{{{z{zzyzy{z{{{{{z{{{zyzyzyz{z{z{{{{z{zz{zz{{{{{|z{zz{z{zz{z{{|z{|{{z{z{{z{{z|{{{{|{{y{zz{{{{z{{|{|zz{zz|{{||{{{||{{z{{{zz{z|{z||{{{{{{z{{z|{|{|{|{{zz{{{zz||{{{||{|{{{{{z{{|{||||{z{{z{{||{{|||||{{z{|{zz{{||{{{|||z{|{z{{||{||{|{{||{{|{||{|{|||}|{{|{{{{{}|||{|}|{|{{z{{{||||z|||{{|{{{{{|}|||{|{{{|{|{{|||||||{{{{{{{{{{{{|{||||{{{z{{{||z|{|||zzz{{z{z{{{{{{z{{zzzzzzzz{{|{z{{{zyzz{{z{{}{{{{{zz{zzzz{{z{z{z{|{y{zzz{{z{{{{{{|{{zzzzyz|{{{{{|{{z{zz{{y{|{z{z{{{yzzzyzz{z{{{zzzzzzzy{zzz{z{{z||z{zzyz{{{{zz{{{{zzz{zzzyzz{{{{{{z{zzzzyzy{{{z{{{{zzzzyzzzz{{z{zz{zzzz{zzz{{{{|{{yzz{{{zzzz|{{{{|{z{z{z{{{|{zzz{{{zzzzz|z{{z|{|{{{z{zy{z{{{{{{{{|{y{|zzzz{|{|{{{{{{{z{{{z{|{{{{||{{{{z{{{|{{{z||{{{{{{{z{{{{|||{|{{{z{{|{||{|||||{{{z{{{y{{|{|}|{|{{{{{|{|||{|}|}{{|z|{|{{||||{||{{{{{|{|{|{|||}||||{z{{{|{||||}z}{z{{{{{{z|||}{|{{{z{{{{{||{}|||{{{{z{{|z||{}||{|{{|{{{{{|{}{{||{z{{{{{z{{|{{|z}{zz|{{zz{||{{||{{z{zzzzzzz|{{|{{{z{zzz{z{{z{{{|{{{zz{zy{{z{|{{}{|{zyyy|z{{|{{|{{yzzzzzzz{z{zz{{{{{zz{zzz{{|{||zzz{z{zzy{{zz{{{{|zz{zzzzz{{z{{|{{z{{zzzy{{{{z{{{{{zzyzy{zz{zz{{{|y{z{zzzzz{{{z{|{zz{zyzz{zzz|{{{z{zz{{{z{{z{{{{|{{zzzzzz{z|z{{z{|z{zyz{z||{{{{{||{{|zzzzz||z{||{{{{||{z{z{|{{{{{|{|{{{{{z{{{|{{{||{z{zz{{{|{|{||{zz|{{}z{{{||{|||{||{{{|{|||{|}|||{z{{{{{{|{||||{zz{{||{{}}|{{{||||{{z{{{|||||{}}}{{{{{{{{|||{|}|{{||||{{||}{||}|{{{z{z{||{{{|{}|||{{|{|{||||||{|{|{{{z{{{{|{{||{|{{{z{{{{||}|{|{z{{{zz{{z{||{z{{{z{z{z{z|{{{{{{|{{zzz{z{|||{{{||zzzyz{zz|{{{|z{{|{zz{zzz{{|{{{||zzzzzz{z{{{{{{{{zzzyzz{zyzzzz{{{{y{zyzz{z{|{{z{zzzzyzzzzzz{z{{{{{z{z{zz{{{{{z{|zzzz{{zzz{{{{{zz{{zzz{{zzz{{{{{{zz{z{zyz{{{z{{|{yzz{zzzyyz{z{{{|{zz{zz{zzzz{z{|z|{z{z{z{z{|{{{{|{{z{{zzz{{{{|{{{{zz{z{zz{{{|{z|||{{{z{z{{z}{|||{{{{{{z{{|z|{z{{|{z{|z{|{z{||{||{{{{z|{{{{{|||}{{|z{{z{{|||{{||{|}{{{{{{{{{||||{||{||z{{{|||{|||||{{{{{{{|{{|||{{}}{{{|{{{||||||}||||}{{|{{||||}|{{{{z{zz|{{|}{{||{{{||{{|{}||||||{z{z{{{{{{|{|{||||{{zz{z|{|}|||{{{{zzz{{{z{{||y{z{zzz{{zz{|z{{||{z{z{z{zz{{{z|{{{{{z|zzy{zz{{{{{{|zz{zyzz{{{z{|{{{yyyzzz{z{{{|{z{{{zzzzyy{z{z{{{z{zz{z{z{{|zzz{zzzzzzzzzy{y|z|zzzz{zzyz{{{{z|{{zz{zzzzzz{z{{{z{{{{{zzzz{z{{||{|{zyzzzz{z{{{{z{{{{z{zyzz{{yz{z{{|zzz{{{zzz{{{{{{|{z{{zz{zz{|{{{{zzz{{{z{z{z{z||z{z{zyzy{{{{{{{||{z|{z{z{zz{|}{|{{{{{z{{zy{{{{{|{||z{{{zzz{|{{{{|z|z|{{z{z|{{|{|||{{{|{|||{|{|{|||{{z{{|{{{{||{{|{{zzz|{{{{|{{|}}|{{|{z|{|{{{|||{||{{{|{|zz||}{|}|{z{{{{{{|{|{|}{{{z{{{{{{|{{||{}||{{||{{|||||||{|{{{|zz{{{{{{|{{}{{z{{zzyz{{{{{}|{{{z{zzz{{{{{{{{{yyz{zzz{{{{z{z{z{zzzy{zz{|{z{|{{{zzz{yz{{{{|{{{{z{zyzzz{{z{z{{|{{z{zz{z{zzz{{{{zzz{z{{zz{yzz{zzz{zzyzyzz{|zzzz{zzzzzzz{{z{{z{{zzzyy{zzzzz{z{z{zzzzzzzzz{z{yz{{{{{z{zyzz{{{{{{{{yyyzzzzzzzzz{z{{z{{zyzz{xzyz{{{{{yz{{{zy{{{{{{{{z{yzzzyzz|{{{{z{zyz{zzzz{|{{{|{z{{{{{zzz|{{|{{{|y{z{{zzzz{{{{||z{zzz{{zz|{{{{{{{{{yzz{z{{{{{{|{|z{{{{z{z{|}|||{|zz{zz{|z}|{||||}{{{{{{|{{||{|{|||y{{{{{z{}|{||||{|{{{{{{{{{|{||||{{{{{|{{|||||}{|{|{{{{||{{}|{||{zzz{{{{{{{||{{|{{{{|{{{||{{{}|{{{{{{{{{{{{|{{|{{||{{{{{{|{{{|||{z{z{yz{z{{|{{{{{{z{{zzzz{|z{zz|zz{zzzzzz{|{|{{|{{zzz{zz{{{{{||{{zz{|zz{z{zz{{{{{{{zzz{z{||z||{|{z{zzzzz{|{z{|{{{z{z{zz{z{{{{|{{zzzzzyzz{{{{z{{|{{zz{zzzz{z|z{{{zz{{z{zz{z{{{{{{{z{{yyzzz|z{{{{{z{{z{zzz|zzzz{{{{zzz{y{z{z{{z{{{y{{zzyzz{{{{{{{z{{{{zzz{z{|{{{{|{z{z{{{{|{|{{|||z{z{{{{{{|{{{{||{{{{{{{z{{{{{|}{|{{z|z{{{{||{{|{{zz{z{zz{{{{{{{|{{zz{{{{{{|}{}{{{{{{{{{{{{|||{{}|{{{{||{|}{}||{|}z|z|z{{||{||||}||z{{|||{{}|}|}{|{z{{||{{}{|{{||{z||{{|{{{{||{|||{{y{|{{||||||||{|{|{|{{||{{{{||{||{{{z{{{{{|{||{|{{{{{z|}{{||||{|{z{yzz{{{{|{{{{{zzzz{zz{{{{{{{|{{z{|yz{{||z|z|{{zyzz{{{{{{{{{{{yzzzz{z{{{{z{{|zz{{zzzz{y{{z||{{|zyzzzz{{{{{{|{{yzz{zzyzz|{zz{{z{yzzzzzz{{zz|{{zzz{zz{z{{z{{{{z{{z{{zzz{{{z{{{{{z{zz{zzz{z{z{{z{zzzzz{zzzz{{{{{{zz{{zzzz|{{{{{{zz{zzzyzz{z{{{{{{{{{z{{{z|{zz|{|{{{{zy{z|{||{zz{{{|z{{{{{{{{{||{zz{{zzz{{||{{||{{{{{{{z{{|||{{|{{z{{{{{{{|||{|{{{z{{|{{z{|{||}|{z{z{{|{{{|||||||{{{|{{|{{{||{{|||{{|{z{{|||{||||{{|{{z|z{{|z|}{||{{{{|{{{}||{||||z{||z{{|||||}|||z{|||{{|{|||||}|{||||{||{|{{|{}{{{zz{{{||{|{{{{|{{zz{{{{|||{|||||{{zz{z||||{{{{{{{zzz{{z{{{{{{{{{{zzzyz{z{{{{|{{zzz{{z{|{{z{{}{zyzzzzzy{{{{{{z{{{zyzzzyz{z{{{||z{z{zzz{z{{z{|{{{yyz{|zz{{{{{z{z|zz{zyz{{{{{{{{{zz{{{yz{y{{{z{{{{zyzzzyz{{{{{{|{zz{zzz{zyz{{{{{{{zzz{zzz{z{{zzz{yzzyzyzyz{{{z{|{{z{zzzyzz{||z{|z{zzz{z{yz|zz{|{|{z{{{z{{{{{{|{||{{z{{z{{{{|{|z{z{z{z{zzzz|{||{{{|{zz{{zz{{|{{{||{|{{z{zz{|{|{|{{z{|{|{z{z|{||||{{|{{z{{zz|{|{|||{z||z{zz|{{||||{{{{{{{{z||||{{||{{{z{{{|{|||z}{||{|{z{|{{}|||||{|{{{{{zz{|||{||}|zz{{{{{{{|{{||{{z|z|zz||||{||{|z||{{zzz{{|{{||{}{{{zyz{{{||z{{||z{{z{{{{z{{{{{{zzyz{z{zz{{{{{{{z|zzzz{z{z{z{|{{z{{zzz{y{{{{{{|{{zzz{z|z{{{{{{{|{{{yzzzz{z{{z{{{zz{z{{{z{{{{{{{{{{z{z{zz{{|z{z{{zzzyz{zzzz{||{z{zzzzzzyz{{{{{z|zzzzzzzz{{{{{{y|zzy{zzz{zzz{z{|||{{zz{zzzz{{{{{{{zzzzyzzx{{{{{z{|yzzzzzzz{{{{{{{{z{{zy{zzz{zz|{{|{{zz{zzz{{{z|{{{zz|{z{zzy{{{||z|z|{zzz{{{||{|{{||z|zz{{z{|{{z{|||zz{{{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{zy|{z{{{{z{{z{yzz{{z{{{|{{{zz{zz{|{{{{{{{zzz{zzz{z{|{{{{{{z|zzz{z|z{|{{{|{yz{zzzzz{zz{{|z{{{{zzzz{{{|z{|{{z{zz{y{z{z{{|{{zz{z{yz{{|{{{{|{{z{zyz{{{{|z{|||{z{{y{zzz{{|{|z|{{zy{z{{zz{z{{{||zzz{zzzz{z{z{{{zzyzz{{z{{{|{{{|{{z{zzz{z|{|{{{|{{z{{{yz{||{||{{z{{zzzzz||{{|{|||{|{{zzz{{{|{}{|{z{z{{{{|{}{{||{{z{{z{z{{|{{{|}{{{z|{|{{|{||}|{|{{zzz|||{{{{{|{||{z|{z{z{{|{||{{|{{{{{{||}||{||||z{{{||{z|{{{|{}|{|{||||{|{|{}{{|{{|z{{|||{||||{|z{{{|||{|||||{||{|{|{|{|{|||}|}{{{z|{{{{}|{|||{{{{{{z{z{|{{}|||{{{{z{{{{{|{{{z{|zzzyzzz{{{{{z{{zzzz{zzzz{{{{{|{zz{yzz{z{z{z{{|{{{zzzzzzz{{{z{{{{z{zzyzyz{zzz{z{zy{y{zzyy{zy{{|{{{zz{z{zz{zzz{{{zzzzzzyz{y{z{{z{zz{zz{yz{{{{y{{{|zz{yzzzz{{{|{{{zz{zzzy{z{{{{{||zzzyz{zz{{zzz|{|{{zzz{{{z{zzz{{{zy{z|{zy{|{{{{{{zy{{zz{{{{z{z{{|{z{{zz{zz|{|{}{{zyzzz{{z{|{zz{{|{z{{{zz{z{{{z|{{{z{zzzz{{|{{{{|{{{|{z|z{|{{{{|{{zz{{{{z|{{{||{{|{{{z|z{{{{|}{}|||{{|{{zz||{|z||{{z{{|{{|z||{||||{{{zz{}{{||{||{{|{{|z{z{{}||{|}{{|{{{z{{|||||}|{|{z||z{z{{|{||{|}{{{{y{{|{|{||{{{|{z{z{{{{|{{|||{zzz{{{{{{{{|{{||zzz{zzz{{||z{z{y{yz{zzzz|{{z{{{{zzzz{yzz{|z{{{|{{zz{zzz|{{z{{{z{z{z{zzy{z{zzz{{{|{yyzzz{{z{{{{|zzzyzzzzz{{{z{{z{zyzzzz{{zzzy{zzz{zzy{{z{zzz{z{{{yzyz{zyz{|zz{{zzzzzyzzz{zyz{{z{zz{zyzzz{z{{z{{{zzzzzzzzy{{z{{{{{zy{{zyz{zzzz}{z{z{zz{z{{{{{|||{{zzy{z{z{{{{zz{{zzyzz{zz{{{{{{{|zz{zzz{y{|||{{|y{{{zzzzzz{||{{|{z{{{{z|z|z|{{{}z{{{{{z{z||zzz|{||z{{{{z{|{|||z|{z{{{{{zz|{{}{|||{{{{{{z{{{|{{|{|{{{{z{z{{|||||||{z{{{{|{||{|{}|{|{z|{{|{{}|}{||{{{}z{{{|}|{{{|||{{z{{{{{||{{|{|}|{{{{{{{{|z{|||{{|zzz{z|{{{{{|}{{{{{z{{{z|{{{{|z{{|z{{{z{{{{|{z{|{y{zzyzzzz{|{z|zzzzzy{y{{|{{{{|z{{yzz{z{{{{{{|{{zzz{zyzz|{{{{{{{zzzz{{z{{{{{|z{{zzzzzzyzz{{{zz{{zzz{{{zz|{{z{zz|z{zzzyz{{{{{z|{zyzzzzzy{z{{{z{{{zzzz{z{{{zz{{{z{zzzzy{zzz{z{{{{zzzzzy{z{z{z{z{{zzyyzzzzzz{zz{{zzyz{{zy{zz{{{{{|zzz{|{z{{{{{{||{{{{{zz{{z{z{{|||{{{{zz{z{{{{z{|}{{{z{{zzz{{{||z{{{{{{zzz{{{{{|||{z{zzz{|{{{z{{{|||{{zz{|{{{|{{|{z{{{{{{{{{{}|{||{{z|{z{z{|||||{|{{{{{z|z}}}|{||}{z{|{{{{{{|{{||||{{{{z{{{{||{|}}{{{}zz|{|{{{{|||{{{{z{{{||{{|{|||{z{|z|{||||{||{{{|{z{{|{|{||{||{{zz{{{z{{{{{|||{{{zz{zz{{|{{||z{z{{{yzz{|}z{{z{z|zzzz{z{{{z{|{||z|z{zzz|{|{{|{zz{z{zzz{{z|{z{{{{{zzzz{yz{{{zz{{{zz{yzzyz{|{{{{{zzz{zzzz||{{|{{{{z{{zzzzzzz|{{{{zzzyzzyz{z|{{|{{zy{zz{zzz{|{z{|{{zzzz{zy{{z{z{|{z{zz{z{zzz{z{{{||zzzzzyz{|z{{|{{zz{zz{zy{|{{{|{|{z{zz{{{{{{{{|||{z|zzyzz{{{{{z{|{{{zz{yz{{||{{||{z|{{z|z{{{{{|{z{z{z{{{zz{{{{{}{{z|{{{{{|{{{{{{||||{|{z||{|||}|}{{{{|{|{||{||||{{z{{z{z{||{|{||||{{{{{z{{|{{||||{{|{{{|z{|{|{|||||{{{|{{{||||{|}|z|{{{z||}|{{|||z{{{{{{|{|||{{||{|{{{|z||{{{}|||z{{z{zz{{{{|||||{z{{{|{y|||}{{||{{{{{{{{||{{|z{{zzzz{{zz|{{{z{z|z{z{{zzyz{z{{{{{{{{y{{zz{{{z|{{{zzzzz{{zz{{{z{|||{{zzz{z{{{{{{{{z{zzzz{yz|{zz{{{zzzzzzzz{{{z{{|{yzzzzzz{{{{{z{z{yy{zzzzz|zz|{{{{{zzzyzy{z||{{{{{z{{zy{zz{|{{zz||{zz{z{zzz{z|{{z{{zzz{zz{z{{{{z{{z{{zz{{z{{z{z{{{|zyzzz{{{{z{{{|}zzzzzzzz{z{|||{{{{{y{|{z|{{{|{||{{{{z{{z|{|zz{||{z{{zz{y{|{{{{}{|{{{z{yz||{|{{|{{{{{||{{|||}~||{z{{{{{{{{||}{{{}||z{{{{||{{{|||||{z|{{z||}{{||||{|{{{||{{z{|}{}}~z{{{{{||}{||{|}|{{|{{{{{{|{|||{|||{{{{{|{{{}|{|||{z|{{{|||{|{||{{|z{{z{{|{|{}{||{z{{|{z{|{}{{||{{|zzz{z{{||{{{|{zzz{zzzz{|{|{{{{{{zzy{z{{{{|{z||zzzz{zz{{z{{{{{{yzz{zz{|z{{{{z{{|zzy{zz{{z{z{{{zzz{zyzy{{{{{{|{{z{{zzyz{z{{{|{{zy{yyzzz{zzzz{{{{z{zzyzz|z|z{{{{{zzzyzz{{z{|z{{{{{zzz{{z{{|{{{{{zz{yzzyz{z{{{{|{{{{{{yy{z{z{{{|{|z{zz{yz{{{z|{{{{{yzzzzz|{{|z{{|{zzz{z{{{y|z{z{}{z{{{z{{z|{{{{||{{{{zzzz{{{|{||z{zz{{z{z{|}||{|{{{{{{{{{|||{{|{|{|{{|{z{||||{{||{{|{{{{{|{z|{||||{{{z{|{|{|{|||{{{{z{{{{||{{{|||{{{{|{|{z|{|}|}}|||{z{z{{}|{||}||{{|{z|{|{{{||}||z{||z{||{{{{|||||{{{{{{{|{|{|||{{{{zz{{{||z{{~|{{{{zz{z{|{|{{{|{{y{z{{{{||{{{{{zyzzzyzzz{{{{{{{zzzzzzzzz{{{z{|zzzzzyzzy{{z{|{{z{z{zz{{zzz{{{zzzz|{yzz{z{{{z{z{{{z{yzzyz{|zy{|zz{zyz{{zz{z{z{{zzz{zzzzyzzzzz{{z{zzyzzzzz{z{z|{{{{zzzz{z{zz{{{z{{{z{zzzzz{{|zzz{z{z{zzyzz{{{z{{{zzz{zyzzz{{zz{z|{zzzzzyz{{{{{z{{{zz{zzz{z|{{zz{{{{{z{zzzy{{{z|{{|{z{{{zz{z{z{{z||{{{zzy{zz{{|{|{{{{{{{{z{{z|{{||{z{z{zzz{{{{||||{{{{{{{{z{{||{{|{{{{{|{{{{|||{|{||{zzz{zz{{{{{{{{{z{z{{{{{||{{|||{{z{{{{{{{{||||||zz{z|zz||{|||||{{{|z{|{{|||}||||zz{{z{{|{{||{{}{{{{{{zz{||{{|||{{{zzz{{z{||{|{|{{{{{{{{|z|{{{|{{{zzzz{{{{|{{{{{{{{z{zzzz{|z{|||zz{z{zzz{{{zz|{{{{z|zz{{{{{z|{||{{{zzz{yz{{|{z||{{{{yzzz{{{z{{{{{zzzz{{zzzzzz{{{{{yz{yz{zzzz{{zzxz{yz{zz{z{z{{{zz{yyyyzz{{z{{{{{y{{yz{zz{{{{{{z{zz{zz{zy{zz{{z{{{{zyzzzz|z{zz{{{z{zzzzzzzz{{z{z{zz{zz{zyzz{z{z||{zz{|zzz{{{|{{{{{{zzzzzzz{{z{{{{zz{zz{{z{{|{{|{{{z{{{zzzz{{{{{{{{{{{zz{z{{{|{|{{{{z{{{z{{|{{{{{{{{z{{{{{{{|{||||z{{|{{|z||{|{|||{{{{{z{{|{||{||{|{{{{zz{|||||{}{{{{{{{|{|||{|{|}|{{z{{|{|||{|{||{{{{|{{{{||{{||{|{{|{{{|{{}{||||{|{{|{z|{|z|{{{|{{zy{{{z{{|{{||{||{|{{{{{|{{{||{{{{z{z|z{{|{{{{{{{zz{{{z{{|z{{{{zz{{zzzz{z{z{z{|zzzzz{zz{zz{||{{z{z{{zyz{{z|{{{{|{|{zzzz|{{|{{{{zzzz{z{zzz{{{{{{{{z{{{y{{{{{{{{{{z{zzzzz{{{zz{z{{{zz{zzz{{zz{{{{zzz{y{{zz{zzz{{{{z{{zzz{{{|{z{{zzzyz{{zzzz{{{|{|{zzy{zz{{zz{z|{{z{{zz{zz{{z{|{||z{z{{z{z{z|{z{{{zz{{{{z{z{z{||{{{yzy{{zzzz||{{|{|{|{{{|z{||{{{z||{{z|{{zz{{{{{|{{{z{{|{{{{|z|||{{z{{{{{{{{|||||{{{zzz{|{||{{{|}|{{{||z{z{{||{|||{{{{||{{|||{||||{|{z{||}{{|{||}{{|{||{{{{|{|||}|{{||{{|{{{|{|||{{{{z{{{{{{{{|{|{}{||{|{{{{{{{||||{{{{{{|||{{||}{|{z{{{{{{|z{{{{{|{{z{z{{|}{|{|{zzz{{zyzzz{{z{{{|zzz{{zyzz{{z{{||{zyzz{{yzz{z{z{|zzz{zzzzz||{z{|zz{{{zz{z{{|{y{{{{zzy{{z{{{zz{{{zzz{z{zzzz{z{{{{{{y{zz{{zzzzzz|{|zyzyz{zy{{{z{{zy{zz{yzyz{z{zz{|zzyzyyzzxz{{{{z{zz{zzzyzzz{zz{{z|zzzzzyzyzzz{{{|{{zzzz{{z{z|{{{|{{{zz{{z{zz{z{{||zzzz{yz{{{{|{||{{{zzzzz{{{{z{{|{{{zz{z{{{{{|{|||{y{{{{zz{z|{{{}{zz|{{z{||{|{{{|||zz{{{zz|{{|{|{|{{{{{{{|{|{||{}|z{{{{z{{|{|{{{|}|y||{{{{||}{|}||{{{{|{||{}{|}||||{{{{|{{{||{{}||{{|||{{{{{|{{{{|{{{|{{{{{{||||||||z{{{z{|||{{{}}{{|y{{{|{{|||{|y|{{z{{{z{||||{|{|{{{zz|{|{|{{{{{{yzzzzzz{{{{{|{{{zyzzyz{zzz{{{{z{zzzzzy{z{{zz{{{{{zzzzyz{z{|{z{{zzzyzzzzz{z{{|z|{{{{zz{zzzzzz{|{{{zy|yyz{zz{z{zyzzz{yzyzz|z{z{{{zzyz{zzzz{{{{zzzzzzyyzzzzz{{|z{{zzzyz{{zz{{{zz{{{{{yzy{xy{{y{{z{zzzzzzz{z{y{zzzzzyz{{zzy{{|zz{z{zz{zyz{zz{{{{{||zz{zzz{{z{|{z{{{{z{{zz{{z{|{{||{zz{z{zzy||{{{z{|{zzz{{{y||||z{|{{{{{{{{{{|{{z{{|{{{{{{z|{{{|||{{z{{z{z{|||{{{|{|{{{{z{|z||{{|{{|{{y{z{{{{|||{|||{{{{{|{|z{{||}{||{{{{z|{{||z|{|{|z|{{{{{{||}{||||{z{{{z{{{|{|{}||{{{{z{{{|{|{|{|{|{zzzzzz{{{{{||{z{zz{{{{||{{{|{{z{{zzzz|{z{{{{{zzzyzzzzz{{z{{{{{z{zzyzz|{z{z{||{{z{zzzz{z{z{{z{{z{zyzz{{{{{{|{{{{{yzyzzz{{{z{{{zzzzzzzzz{zz{|{yzyyzzyyz|{{z{{z{zzzzz{zyzz{zz{{zzzzzzz{yyz{zy{{|{zyy{yxzzzzz{{zz{z{zyzzzz{z{z{{{{zzzzyzzzzzzz{{|z{zzzzyzzzzzz{{zzzz{zz{{|{{zz{|{zzzzzz{zz{|zzz{{{{zz{yz{zzz{|z{{{zz{{zyyzzz{|{||{{zzyz{zz|{{{|{{{z{{zz{zz||{|{{{z{{zz{zz{|{{||{|{z{{{{z{|{{{|||{{{{{z{{|{{{|{|}||{|{z{{{}||{|{|{{{{{zz{{||{{{|{{zz{{z{{zz{{z{|{{|{{{{|{z{}{|{|||}{{{{{{{{{|||||{|z{{{{z{{{|{|{}|{{{{{{{{{{{||}|{{{{{{{|z{{|{|{|}{|{{{{{z{||{{{|{zz{y{{{zz{|z|z||z{z{z{zz{||{{{|{zzzz{{{z{|{{{{|{z{zzz{{z{zz{{{||zzzy{z{{{z{|z{{{{yzz{zzzzzz|z|{|{zzzzz{{{z{{z{{{|zzz{zyyzzz{{|z{zy{yzzzz{yzzz{{{yzzzzzzz{y{{z{|{z{|zz{zz{{|z{{{z{z{zzzzzz{|z|{z|zzzz{{zzz{{{z{{}{zzy{yzzz{{{{{{{zzzzz{{zy{zz{||z{zzzzzzzz||{{{{|z{{{zz{zzzz|{{{{{{{{y{{z{{|{{{||{zzzz{zz{{||{|{{{z{|{z{z{{{|z{}{{{{{z{{{{|{||{|}|z{{|{{z{}|{|{{{{{||{{|{{{{{{{{|{{{{{z{z|{{||{}{{zzz{{zz||||{|||zz{{{{|{{{||||||{z{{{{z{{|{{||||{z{{{{{{||||{{{||{{{{{z|{{{||{|||{{{{{{|||||{|{|{{z{{|{{||||||{}{{{{{y{zz||{|}||{{{{zzz{{{|{|{{{yzy{zzzz{{z{{{z{{{z{zz{{{{|{{{{{|{zyzzzzz{z{{{{{{zzzzzzz{{{}{{|{{{zyzzzyz{{z{{{|yy{y{{zyz{{z{{|z{zzyzzz|{z{zzzz{{zzyyzz|{y{{{{{{yzzz{y{{{{{zzz{{zzz{z{{z{z{{{z||z{{zzz{yy{z{{{{{{{z{z{zyz{{{yz{{zzzyzzzzzz||{{{{zz{zz|zzz{{{z{{z{zzzzzyz|z{{{{{{{{yzzzz{z|{||{{{{|{zz{|z{{{{{{{{|{{{{z{zz{{{{||{{{{z{{z{{{{zz{|{{{{{zz{{{{z}{|{{{{{z{{z{{|{{||||{{{{{||{{{{z{{}||{{zz{{z||||{|{|{{zz{{{{{||||{||{{{|{{|{{{|{}||||zz{{|{z|}|{|||||{{{z|{|{|{||{|{{|{z{{{zz||||{{{|{z{{{{{|{{|{||{{|{z|{{{{|{{||}|{{zz{{{{{{|{{{||{{{z{{{{z{|{z{zz{{zzzzzzz{{z||{{{zzzz{zz||{{{{{|{{{zz{zz{{{{|{|{|z{yzz{z{{|{z{{{z{z{zyzz|z{{{{{{zz{{{zzz{{{{{{{z{{y{zzzzz{z{{{z{yzzzzzy{{zzzz{{{yzzzzzzzzz{{{{{{zzzzyzzz{{z|{{{{zz{{zzzzz{{{z{|{{zyzz{zz{{{{{{{{{z{z{zzzz{{|{{{{zz{zzzzyz{{{{{{{zzzzz{zz{{{{{|{{yz{{zz{z{zz{{{{|{z{{{zzz{|{{{{{{{z{zzz{z{{{{||{{{{{z|z|z{{||{||{{|{|{z{{{{{{{|{||z{{|{|z{{{|{{}{{{{{{|z|{|{{}||}{|zz{{z{|}}|{{|{{z{z{{{z}{{{{{|||{{{{{|||{{|{}|{|{{{{{{z{||{|||{}{z|zzz{|{|}||{||{{{|{{|{}|{||{|{{{{{{y{z}{{||||{z{z{{zz|{{||{|||z|{z{{z|{{|{z|||zz{zz{{{{|{|{z{zzz|{zzyzz|{{zz{zz{z{{zz{{z{{{{{{z{zzzz{{z{{y|{|{zzz{zzz{|z{{{{{{{{zyz{y{{|{{{z|zy{{zzzy{{{{zz{zzz{zz{y{{{|{z|{z{zyzzzzy{z{z{{|{z{zzy{{yz{{{{{{{{z{zzyyz{{zz|z{zz{{{z{{z|{z{z{{z{z{zzzzzy{zzz{{|zy{yzz{yz{z|z|{zzzzz{{zzz{z{{{{{zzzzzz{{{{{zz||{{{z{{z{z{||y{|{{{zzz{{z{|zz|z|z{{z{|z{{{{{z|{{{||z{yz{zz{{{{{{{{|{{{zzz{|{{{{{|{{{zy{zzz||{{||||{{{{{{{{{{|{||{}{{{{{{z||{{|}{||{z{{{{{z||||||||{{{zzz{z||{||{{||zz{|{{{{{{||}|||{|{{{{{|||||||||{z{|z{{{|{{{{||{|{{z{z{||||{|||{{{{{{{{{{{|||||{{{{{{{{{|{{||{|{{zzzz{z{{|{{{{zzzzzzy{zz{{zzz{{zyzzyy{{{{z{{{{|{yzzzzyz{{zzz{{{z{zz{zzzz{{zzz{{zzzyzzzy{z{z{zz|zyzyz{{yy{zy{{{{zy{zz{zzzz{{z{{{zzzzzyyz{zz{z{{{yzyyzzzzz{z{z|{z{zyzzzyzzzz{|{{zz|{zxyyy{{{{z{z{yyyzzzzzyzzz{{zzzzzzzzzzz{{z{{{{zzzzzz{yzz{{{{{z{zzyzy{z{y{zz{z|{zzzyyzz{{{zz{{{z{zzzzz{{zz{{{{{zzz{zyzz{{{{|z|zzz{zz{{zz{{{zz{{|z{z{zyz{{{{{{{{{{{{zzzz{{|{{|{zzz{z{{{{|{{|{|||z{{{z{zz{z|{{||{zz{{{{z{||{{|||{{{{{z{{{{{{||z{||zz{{{zzz||||||||{{|zz{z||{|||{|{{|{z{zz{|{{||||{zzz{zzz||{{{|{{z{zz{zzz{{|{{{{||{z{{z|{z{{|{|{{{{zzz{{zzz|{{{z{{zyzzzzzz|yzz{{{zzzzzyyyz{{zz{{{{zyzzzzzzz{{{z|{{zzzzzzyzz{{zzz{{{zyyzzz{{{{{z{{zzzzzyyzzzzzz{{{zyzy{yyy{y{z{{z{zzyyzzyyzzzzzzz{zzyyzzzzyyz{z{{z{zzyyyzzz{zzz{|zzz{zyzzy{{zzz{|z{zyzzyyzzz{yzzz{zzzxzzyyz{{zy{|{zxzzzzzzz{{zz{{z{zyzyyzz{{{z{{zzzzzyyzzzz{{{{zz|zzzyzz{{{z{z{{{{{{zz{zzzz{{{z{|{{{{{z{z{{{||z{}|{zzz{zzz||{{{||{{z{z{{z{{{{{|}|{zz{{zz{z{{{|||||{z{{zzz{{|{{z{{{{{zz|{{z{|{||{}|{{{{{{{{{||{|{{|{{{{{z{z{{|{{|{||{z{{{zz|{{|{|{{|zz{{zz{z{{z{{||{y{zzzz{{{{{{|||{{{zz{z{{{z{{{{{{|{{z{|z{|{|z{|{yz|y{zz{{|{{{zyzzzyzzzyyz{zz{{z{yzzzzyzzzy{{{{z{zyzz{zzzzzzyy{{z{yz{zyzyyz{{yz{zzzzzyzzyzz{{{z{{zzzzz{zzzzzzyz{{{yxyzzzzzyzzzzzzzzzyzyyzzyz{yzzzzzyzzyzyy{zz{{zy{yzyyzyzzzzz{zz{z{yyyzzzzzyz{zz{yyzyzyyyzzzy{z{yzzzzyz{zz|zzzz{yyyzzzzzyz{{{z{{zzzzzzzzzz{z{{{z{z{z{yyzzz{{z{{{|{{zzyzzzzzz{zz{{zz{z{y{z{{zz{{{{zzyzyzzz{{{z{z{{{zz{{yyzz{z{z||{{{{zzzzz{{z||{{{zzz{{z{z{{{{{{{{z{{zzzyz{{{{{z{{{{zzzz{z{{{{|{{|zz{zz{{z{{|{z{{{|{zz{zy{z{{|{{{||z{zz|{z{{{{{||{{yz{zz{{|||z|{|||{z{zyz{|z{{{{{{z{{z{{{z{{z{{|{z{zz{zzzz{{{{{{|{z{z{zx{zz|{z{z{{{{{yz{yzzzzzzzz{z{yy{yzyzz{y{z{zz{zzzyzz{z{zz{zz{z{zzzyzzzz{z{{{{yyxyzzz{{zxzzz{yz{zyzyy{zz{z{{zzyzyyzzzzz{zy{{{zy{zyzzzyxz{y{{{yzzzzy{zyzzzyz{zzzzyzzyyyz{z{zzzzzzzyyyzzzz{z{{{yzyzzyyzzyzy{zzzzzzyzyzyzzz{y{{{zy{yyzyyz{{{z{|{{zzz{zzz{z{|zz{|zzzzzy{{zz{z||{{z{{zyzyzz{{z{{{{z{z{zzz{z{z{{|z{{yzyzzz{{{{z{z|zzzzz{zz{{{{{{{z|{zz{{z|{||{|{{{{{zzz{zzzz|{{{{{{{{zzz{{z{{|z|{{{{zzz{zz{{{{|{{|{z{{{{{{{zz{{{{{{|z{{{z{z|{{{z{{{|z{{z{{{{z{{z{{|{{z{{|{{{||{{|||{{z{z{z{{{||{{{{{{{y{z{{{z{{{{|{{{zzzz{zz{{|{{{{zy|zzz{z|{{{{|zz{zyzzy|yz{{zz{{zzzzzzzzzz{{{|{z{zzzzzzyyz{zzzz{{zyzyyyzyzzyzzz{zzzzzyzzyz{{{zz{|zyzyzzzyy{y{{{|zyz{yzyyyz{{zz{zzyz{yyzy{zzzz{{{z{yzyzxzzz{z{{z{zzyyzy{yzz{zzz{zz{yzzyzyzzz{yz{zzzzzzzzyyyzzzz{{zzzzzzyzzzzz{z{zy{z{zyzyzzzy{zz{zzzzz{z{{{zzzy{{{zz{zyz{zzzzzzz|{{z{zy{yzz{zz|{{{zzzz{yzyz{{{{zz|z{zzzzz{{{|{{z{|zyz{zzyz{{{{{z{{{z{{{z{{{{z{|{{{zzz{{{{{zz{||{|{{{z|{{z{{{{z|{|||z{{{z{zz|{{|z|{{{{{y{{{{{{{{{{{{z{zz{{z{|{z{z||{{z{zzz{{{z{{{{{{{zzzz{{{yz{{{|{{{zz{{zz{|z{|||{{z{{{z{z{|{{|{{|{{{zz{{z{|z{|{{{zz|yz{zz{zz{{z{zzyyzzyzzzzzyz{{{zzz{zzz{{{{{z{{zzzzzzzzzzzy{{|{z{z{zzzzzz{{z{z{{{z{zzzzyzz{zz{zzzzzzyyzy{zz{{{{{yzyyzzy{z{z{{{zzzzyzy{yyz{z{z{zzyyyyzyzzzzzzz{zzzzyyzzzz{{{y{{{zz{zyyzyyy{zzz{z{zzyzzyzyzzzzyz{{zz{zxyzzy{{zyz{z{yzzzzyy{z{{{z{zzyzz{zyzz{zz{z{zzzzyzy{z{{{{z{{{{zzzy{zzz{{zz{{{{zzzyzzzzzz{{{{z{{zzzzzzz{|{{{{{{zz{{yzz{{{{{{{{z{z{{{{z{{|{|{{|zz{{{|zz{{{|{{|{zz{z{{zzz{{z||{{{{z{{z{{||{|{{|{{zz{{z|{|{z{{{|{|{{{z{|z{}|||||{|{y{zz{{|||{|{||{{zz{{z{{{{{{{{|{||{{{{|{z{{{|{|{{zyzzz{|z{{{{{{z|z{z{{zz{{z{{{zzz{z{zzzzz{{||zzzzyzyzzy{z{zzzz{zzyyyzyyz{{zz{z{zyyzzz{z{yzz{z{zyyxxxzzyyz{{{z{zzzzyyy{zzzzzz{{zzzzzzyyyz{zzzzzz{yyyyzzyzz{yz{zzzy{yzzzyzzzzzz{{yy{zzyzyzy{zzzz{zzzzyyyyzzyz{{{{zyzzzzyyzzzzy{zzzyzyyyxzzzzyzzzzzyyyyyzxzzyzz{{zzzyzzzyyzzz{zz{z{{yz{yzyzz{{zz{{{yzzzzzz{{z{{z{{zzzyzz{yz{{{z{{{zzyzzzzz{{{{z{z{{zz{z{zzy{zz{{|z{z{{{zyzzzzz{{|zz{{zz{zzz{{{|{|{z|zzzzzz|z{{{{{}zzz{zzzz{z{z{{{z{z{zz{{{{{{|z{z{zzz{xz{{{{||{{{{{zz{z{z{z{||z||{{y{z{{{z|z{z{|{{z{z{z{zz{{{{{{z{{z{zzzzzzzz{z{z{zzzz{zz{{{z{{z{|zzzzzzzz{{z{{{z{zzzy{yzz{z{{{{z{z{zz{y{yz{z{z{{|zzzzzzzz{z{{{{|{{zzyzzzz{{{zz{z{zyzzzyyzz{{|z{zz{zzzyzzzz{z{z|{{z{zyzzzzz{zzz{{zzzzzzyzyzz{z{{z{zyyzyzyz{zzzzz{|zzz{yzyyzzzzz{{{yzzyzzy{{{{yz{|{zzzzyzzyz{z{z{{{zzzz{yzyz{z{{z{{zzzy{{zzzzzzy{zzzy{zzzzyzz{{{||{{zzzzyzzz{z{zz{{zyzzzzzz{z{zz|{{z{{zz{{z{{z{{{z|{{zzzz{zz{{{{{{{zz{{zzzz{z|{|{|{z{zzyzzyz{{z{{zz{|{{{{{zz{||{|{|{{{{z||{z|{{z|{|{{z{zzzz|{{{{|}{{z{{zz{|z}z{{||{{{|{{{{||{{|{|z{|yzzz{{zz|||{{|{|z{{{z{z{{{{|||{{{{{{|{{|{||{{|}|||{{zz{|{{{{|{{{z{{{{z{{{z{{}||{zzz{zz{|{{|{z{|zzzzz{{z{{zzzzzz{zzzzzzy{{z{{z{{zzz{zzzz{z{zz{{{zyzyzzzz{zzzz{z{zzzzzz{yz{{zzz{{z{zzyzzy{z{zzz{yzz{z{zzzz{yzzzzzzyyy{yzzyz{zzz|zzyyzzzzy{yzzzzzzyyzyyyzzzzzzzzzzzyzzyyz{zz|zzzz{zz{zzzzyz{y{{{z{zzzyyyzyz{zzz{{{zzzzzxzy{zz{z{{{yyzyy{zyz{{z{z{|{zzyzzzzz{{z{{|zzyzyzz{z{z{{{zz|z{zyzzyz{{{{zz{{{{{zzy{y{|{{{z{{z{zzzzy{z|{{z{{{z{zz{zzz|zz{y{{{{{{{{{zzz|{{{|||y{{zz{z{{|z{{|{{|z{zz{zyz|{{{{z{{z{{zzz{{{{{{{{{{zzz{{{{{z{{z{||{zz{{{zz{|{|{|{{{z{{zyz{z{z{{||{{z{z{zzz|{{{|{{{|{{{{zz{z{|{{{{|z{zz{{{zz|{{{|{{z|zyz{{zz{{{{{{{{yzzzyz{{{|zz{z{{{zz{yzzz|z{{{{{zzzzyzxzy{{{z{|{{z{zzyzz{z{y{{{yzz{zzzz{zz{{z{z{|{yzzzzyzz{{{zy{yyyzzyzzz{{z{{{zzzzzzyzy{{zz{{z{zyzyyzyzzzyzz{z{zzzzyyyyy{zzz{z{zzyzyzyyzz{{yzz{{zzzyyzy{zzzz{z|zzzzzxyyy{zzzzz{{z{zzzzyz{yzz{zzzzzyzzzyzzz{z|{zz{zzzz{zzzz{{z{{{zz{{y{yzz{zz{{{z{zzyyzz{{{zz{z{{z{zzz{z{z{{{{{{{zz{yzzzz{{z{{{{{{{{z{zz{{{{{{{{z{{z{{z{{{{{|{|{zz{z{zz{{{|{z{|{{zz{{{z{{|{{|{||||zz{z{z{|{{|{|{{{{{z{{z{|{{{{{{{z{{z{z|z{|{{|{|{|{{z{{{|||{{}|{|{{{{zz{z{|{|{|||||z{{z{{{{|{||{z{z{{zz{{{|{{{|{{{zzz{zy|{|{{z{{zz{zzyzz{{{{z{{zzzzzzzzy{{{z{zz{zzyzzyzzz{{yz{{{zzzy{zyyyzzz{{zz{yyzzzyyz{zzy{{{{zyyyyyyzz{zy{{{yzzzyzzyz{yyz{{zzyyzzzyyzz{zyzzzzzzyyzzz{zzz{z{{yyxzyyyxzyzzzz{zyzxzzzxyzzzz{zzzyyzzyy{yzzzz{z{{zyyyzzzzzzzzz{{{{yzyzzyyz{zzz{zz{zzyzzyzzzz{{zzzzyzyzyzyz{{zzzz{z{zzyzzzz{|{{{{{zy{zy{{zzzzzz{|zzzzzzz{yzz{z{{{yyyzz{z{y{{{z{z|{zzzzz{zzz{{{{{{{{zzzzzzzzzz|{{|{zz{z{zzz{{{|{{||zzzzz{{z{{z{z{z{{z{{{zzyzz{z{||{z{zzz{{{z{{{}{||{z{z{z{z{||{{|{|{zzzzzz{{{{z||{{{z{{zz{z{|{{|{{|{z{y{{z{z{{|||{{zzzzz{zzzz{{|}||{zzzy{zzzzz|{{z{zy{yyz{{{{{z{zz{zzzzzyzyz{{zzz{zyzzzzzzzzz{{{{z{{yyzy{yz{zz{{{zzzyzyzyzzyz{zzz{{zzzzyyzzzz{z{|{{zzzyyzzyzz{zz{{yyz{y{zzzy{{zzz{zzzzyzzyzzzzzz{{zzzyyyyzzzzzzyz{zyyyyzzyz{y{zzz{{zzzz{zzzz{zzz{zzzyyzyzyzzzzzz{zzzyzzzyzzzz{yzz{zyzzzzzzyzyz|{{|{zzzyzyy{z{zz{{{z{zzzz{zy{zz{{z{zzyzzz{z{z|{zz{{{zzyzzyzz{y{{{{{zzz{yzzyyz{{{{{z{{z{zyzzz{zzz{z{|{{z{zzzz{|{z{{{{z{zz{{{z{{z{{{{{{zz{zzyzy||{{||zz{zzzzzz{z{z{{||z{{zz{|z|{{|{||z|z{z{y{z{|{{{{|{|{|{z{z|{{z|{||z|zzzzz{{{{{{||{|{zz{{{{{{{{{|{|||{{z{{zz{{z{|{|{{{zz{zyy{{{{z{{{{z{{{{zz{{{z{z{{yzzy{zzzz{zy{{{{zzzyyzyzzzz|{z{{{zyyzzyzzyzz{{z{zy{zzyyzzzzzzzz{zzzyzzyzzzzzz{y{zyzzyzzyzzyyz{{{zzzyzzyzzzzzzzzzyy{zyzzzyyz{{yzzyzyyyzzzz{zzzzz{zzz{yzzzzz{{{zzzyzzyzzzzzzz{{z{{yyzyyyzyyyz{z|z{{zyzyyyyyzyz{{z{{zzyzzzyz{zzz{{z|yzzzyyzyz{zz{{{zzz{zyzzzzzzzz{{zzzzzzyz{{z{zz{{{zyz{zzy{{{{{z{zzy{zzzzz|{|{{{}|zyzzzzzz{{|zz{{{{zzzzzzz{{{|{{z|zy{{{{{zz{z{z{{|{zz{{zzz{zzz{{{z{zz{{{{{{z|{{{{|{z{z{{|z||{||{{{{|z{{z{z|{{{{{{|zyz|zz{z||{|{{|{{zzz{z{z{{|{{|{{{{z{{{{z{{{{{|{{{{{z{{{{{||{{{{|{zzzzzz{z{{{{{{{{{z{zz{y{{{|y{z{zyzzzyzyzz{zz{{{yzzyyzzz{zzz{{z{{zzzzyzy{{{z{{{zzzzy{yzyzz{{zz{|{zzzzyyyzzyzzzy{zyzyyzy{zzzzz{{zzzyzzyyzzz{|z{zzzyy{yzzyx{yzz{{zyzyzzzyyzzzyz{zzzzyyzxyzz{{{zzzzzz{yyzzzyzzzz{z{yyzyyzzyzzz{zzz{{zzzzyzzy{zzzz{{zzzzyzyy{zzzzzzz{zzzzyzyz{{zz|z{{yzz{zzzzz{{z{zzzyzzzzzz{|{zz{|z{yzz{zz{zz{{{{z{{{zz{{zy{{{{|{{z{zz{zzy{{{|zz{{zz|{{{zzz{z{{{{{z{{{{z{{z|{{{{{|{{zzzz{z{{||{z|z{|z{{zz{{{{{{{{{{{{z{z{{{{{{{{|z{{z{{z{{z{}{{z{{}{zzzzz{{{{{{{|{||z{zzzzz{{{|{{{{{{zzy{zz{{{{{{{||z{z{{z{{{{{zz|{||zzzyz{{{|{|{{{z{zz{zzz{{z{{{z|zyzzzyzyzz{zzz{{zzzzyyzyz{zzzz{{{zyyx{zyzzz{{zz{{y{yyyzz{z{{{z{{{zzzyzzyzzzz{{z{zzzyyyzzz{zz{zz{zyzzzzzz{y{{zzyzzzzzyyyyzyzzz{z{yyzyxyzzzz{{zz{yz{zyxzyzz{zzz{zz{{{zyyyzzzzz{zzzzyzzz{yyzzzyzz{zzzzzzyyzy{zzzz{{zzzzzzyyzzz|z{zzzzzzzyzzz{z{zz{|{{zzyzzzz{z{z{z{{{zzzzzz{z{{{|{{yzzzzzzy{|{{{{{{zzz{zyzzz{{{zz|zzzz{zzzzz|{z{|{{{{{zz{zzz{{|{{{{zz{z{{{{z{{|z{{{{{zzz{zz{{{{|z|{z{zzz{zz{{|{{{{{{|zz{z{y{{{|{{{|{{zz{{{{{||{{|||{{{{{{z{{|{{{{|{{z{{zzz{{z|{{{|{{{zzz{{{{{{{{{{{|{{z{{zz{{{{||||{z{zzzzyz{}{{{{{{z{{yz{z{z{|{z{z{zzyzzyy{z{zzzz{{zyyzyzz{{zz{z{{{yyyzyzz{{z{{||z{z{zzzzyzz{{zz|{zzzyyxyy{{{zzzzzzyzz{zzzzz|yzz{{zzzyzyzz{zzyz{{zzyzyyzzyzz{zzzzzyzzzzzzzz{zz|z{zzyyzyzzz{{zz|zyzzz{{zzyzz{{zzz{{{yyyzzzyzzz{zz{zzzyyzzzyy{{{y{{{yz{zzzzyz{{{{z{{{zzzy{z{z|{z{{{{zzyzzzzz{zz{{{|{{zzzyyzyz{{z{zz|{zzyz{zzz{{{{|z{zzzyzzzz{{|{zz||z{z{zz{z{{{{{{{{z{{z{{z{|z|{{}|}{{{z{z{z{{{{{{|{{{|{zzyz{{{{{||{{z{{{zy{{{{zz{{{{{|{{{zz{{{{|{|{{z{z{{{z{{||{|{|{z{zz{zz|{}{z{|{|y{zz{{z{{z{{{|||{z|{{{z|{|{{{||zz{z{{z{|z|z{{{{{{zz|zyz{z{{{{|{{{z{zzzzz{|z{zz{zzzzyyzzzzzzz{z{zzyzzyyyzzzz{z{{{zyzzzzy{zzzzzz{xyzzyyyzyzzzzy{{z{zyyyzy{{{yz{z{zyzyyyyy{z{zz{{z{yzzyyyyz{zyzzzyzyyzyyyzyyyzyz{zyzzyzyyzyz{z{zzzzyyyyyyzyz{{zz{zzyzzyzzxzz{{zz{zyyyzyzyyzzzzzzzzzxzxzzzyz{zzzzzzzyzzzyzz{zzz{{{zzyzyzzzyzzzz{{z{yzzzzyzz{zz{{zzzzzzzxzy{{z{{zzzz{yyzxyy{y{z{{{{{zz{{zyz{{{{{zz{zzzyzzz{zz{zzzz{z{zzyzzzzz{{{{{{|z|{z{zzz{{z{|{{{{{z{zzzz{z||{{||{zz{zzyz{||{{{{{{z{{z{z{{{{|{{z||z{zz{{{{{{{{{|{z{z{zz{z{{{{{{{{{zzz{y{{{z|{{z{z{z{{zzz{{{|{{{|{zzzzz{{{z{z{{z{{|yz{{{zzz|{{z{{{z{yzyyzzzz{z{{z{yyzzzzzyzzz{zz{z{yzyzyyyz{zzzzzzzzyyyzzx{zzz{zz{zyzzyy{yyz{zzzzzz{{zyyzyzyzy{zzzzyzyyzzyzzzzz{zy|zzyzzyyzzzzz{z{zyzxyzy{z{yzz{{zzzyyzzyzz{y{zz{yzxyzyzyy{zzzzzz{zzzzxzyzzzzy{{z{zyyzyyzyzzz{{zzz{{zyyyzzyzz{zyz{zzy{zzzz{zz{{{{z{yyy{{yy{{zz{z{z|zzz{z{yz{z{zz{{zzzzyyyyz{z{{z{z{zzzzzzzz{zyz{{{zz{y{{zzzz|z{{{{zy{{zzz{|z{z{{z{zzzzzzz{z|{{{{|{yy{{zz{zz{z{{{{{{z{{{zzzz{z{{{{{{z{{{{zz{|{{z{{|{{zzzz{{{|{{{||{{z{z{zzzz|||||{{{z{zzzyz{|||{{z{{zz{z{z{{{zz{{|{{zzz{{z{{z|z|{{{{zzyz{z{{{zz||{{{{zzzzzzz{|{{|{{zzyyzy{z{zzzzz{zyzzyyzzyy{{{z{z{z{z{yyzzzzzzzzzzzzyzzzzz{{z{{z{{{zzzzyyzzz{{zzz{{zzzyyzy{{{{{{{|zzyyyz{zy{z{yz{yzzyzzyy{z{zzzz{zyyyzyzyzyzz{z{{{yyzzzyyyzzzzzz{z{yzyyzz{zy{{{z{|zzzyyzyzyz{z{{{{z{zzzy{yz{zzyzz{zzyy{zyyzzzzzzz{yzzzy{zyzyz{{{z|{zzz{yz{zz{{z{|{{zzzyzzzzz{zz{z{zz{y{yzz{z{{z{{|zzzzz{{z{{{zz{|{{{zzzzy{{{z{z{|zz{{z{zzy{|{{z|{{{{zz{{z{|{|}{{{{{zz{zz|{|{||{{}||z{zz{zz{||{{zzz|zz{zyzz{||{{{{{{{{z{{{|{|zz{|}{{|{z{{zz||{|||{|{z{{z{z{|{{{{||{|{z{{{{{z||{{||{{z{{zzy{|{{|{|{|zzzzzzz{z{{{{{|{{z{z{|{zz{{{{|{{{z{z{{z{{z{{{z{yzzzyzzyzz{zzzz{{zzzzzzyyz{z{{{{{zz{yzzyzz{zzz{z{{zzzzzzzy{{{zz{{zz{zyz{yzz{zzzz{zzzzyyyzzzzzz{{z{y{zzzyyzzzyz{{yzyzyyzzzzzzzzzz{zyzyzyy{zzzz{z{{zzzzyzyzz{{zz{z{{zzyyyyzz{y|zz{{zyyzzyzxz{zzzzzzzzzzyzyzyz{zy{zzzzzyyzyyz{{{{z{{zzyzzyy{zzz{zz{{z{y{zy{z{zzz{{{{zy{zyzzyzzy|{{{{zzzzzzzzzz{{{{{zzzzzz{zz{{{{{{{{zzz{zzz{{{zy{{{z{zz{{zz{z{{{|{|{z{{zzzzz|{z|{{||{zz{z{{zz{z{{{{{{y{{{zzz{|{{{|{{{yz{{{z{{{zz{|{{|zzzz{z{{{{{|{|{{z{zz{z{{{{||||{|zzz{{z{{|{{{{{|{{z{{zzz{{{{|{|{{{{yyyz{{|{{{{{{z{zzzzzzz{z{{{|{{zzyyy{y{{{z{{z{yzxzzz{zzzzz{yzzzzyzyzy{zzzyz{{{zzzyzyzyzz{zz{{{zyy{yzyy{yz{z{{{{zyzyyyzzz{zz{{{zyzxzzzz{zyyyz{zzyzxzyyyzzzyyzyzyzzyyyyzzyzyz{{{yzyyyyyyzz{yz{{y{z|yyxyyzz{zz{zyzyzzyzzzz{z{{{{zzyzzzzzzz{zzzz{zzz{yxzyyzzzzz{zzzx{yzzzyzzzzzyz{zyzzzyyyz{zzzz{{yzzyyzzzz{zzz{{{zz{zzzz{{{zz{{{{{zzy{zyzz{{{{{{z{zzzzy{zz{{{{{|z{zzzzzzzz{zzz{{zzz{zzzzyz{{}{{z{{zzzyz{{{zz{{{{{|zzzz{yzz{{{|{{{{zz{{z{z{{{{{{{{z{{zzz{{z{z{|{{{{zz{zz{z{|{{z{z{|z{{zz{{{{z{{{|z|y{z{{z{zz{{z|||{{z{{zz{||{{{||z{{zy{{z{z{{|{{{{{{z{z{zzz{{{z{|{zz{zzzzyzz|{{{zzzzyyzzzyy{zzzzzz{zzzzyyy{{{zzz|{{zzyzyyy{zyzz{{{zzzyyyzyzz{{yz{{{yzyyyzy{{{z{zzyzzzzzyyyz{zyz{{zzzyzzzyyzyz{yzyyzzzzyyyzzzzzzzz{yzzzzzzzyz|yzz{z{z{zyyyz{{{zz{z{zzzyyzyyz{z{z{{zzzyyzzzyyzzyy{zyz{yyyyzyy{{zzz|zzyzzzzzyzzz{z{zzz{{{zz{yz{zzzz{{zzzzyyzz{zz{{{{{zy{zz{zz{z{{{{{{zz{zzyzzz{{{{{{z{z{zzzz{{|{{{z|{{z{z{{{{z{{z{||{zzz{y{z{{{{{|{{{zzzz{{{z|{{{{|||{zz{zzzy{{{{{{{{{y{z{z{z{{{{{{|z{z{z{{{z{|{{{{|{}{z{{{{zz|{{{||{zy{{zzzy{|{{{{{{{zz{yzzz{{{z||||{|y{{{zz{z{z{|{{z{zz{{zz{{|{{{{|{z{z{{zz{{{||z|z{z{zyzzzz{{{zzzzzzzzzzxzzzzzz|z{zzyzzyyyz{z{zz{{{yyyzyzyyz{zzz{zyyyzxzzyzz{zzz{{zyyyyyyyzzyzz{zzyz{zzxyzyzzzz{zzzzyy{yzyy{zzzzyzzzyyyzyy{zzzzzzyxyzzyzyyyzzzzzzzzxyzxyxzz{zz{{zz{zzyyyzyzzzzzzzyzzyzyyyzzz{zzzzzyzzzyyzzyyzyz{zzzyyyzzyyzzyy{z{zyz{yyzyyzzz{z{z{{zzzzxzzzzzzy{z{xzzyyzyz{{zz{zz{{zzzzzzyzzz{{{zy{zyzzzzzz{{zzz{zzzyz{yyzzz{zz{{{{yzzz{zzz{{{{{{zzzyzy{{zz{z{{|{{{yzyzzzzz{|{zz{{{yzz{zzz{|z|{{{|{zz{x{{{{|{{z{{|{z{{{z{zz{{{|{||{{{{zzz{{{{{{|{{zzzzzzzz{{z{||{{zzyy{zz{{zy{z{{|zzyyzzzzzz{|z{|{{z{zy{yy{z{z{z{{{z{zyz{yzz|yz{zzzzyz{zyyyz{{z{z{zzzzzzzyzzz{zy{{zzzxyzzy{yz{zz{{zz{yyzzyxz{zzzz{zz{yyzyzzzzzz{z{yzzzzzzzz{zzzzzzz{{yzzyz{yzz{z{{yzzzyzyzzzyyz{{{zzzyyyyyzzzz{{{yzzzzy{yzyzzzzzzzzzzyyyyxy{zzzzzzzyzyzyzzyzzyy{z{yzzyzzyzz{zzz{zzzzzy{{yyz{zzzz{zzzzzzzzz{{z{z{z{zz{{xy{z{zz{{z{zzzzzyzyyyz{|{{{{{{zyyzyyzzzzz{{{{{{zyz{y{{{{{z|{{zzzzzzz|z{z{{{{zz{{{{z{z{{{{|z{z{z{{z{z{{{{{{{{{{y{{|zz{{{{{z{{{zz{zzzz{|{{{{{{zzz{zz{z{{{z{{|{z{{z{{{{z|{z{z{|zz{zzz{{||{z||{{{zzzz|z{{{{|{{|{{{{{zzyz{{{{z{{|{zz{{z{{{{{zz|{{{zzyz{{yz|{{{z|{{{|yzzz{{{zz{{z{zzzyzyzyzz{{zz{zzzzyzzzz{zzz{z{{yz{zyyzyz{{x{{zzzzzz{yzyz{z{zz{{zz{yzz{xzzzzzzz{zzzzyzzyz{{zyz{zzxzyyzyyzzzyzzzzyzzzyyzyzzzzz{zzyzyzxyzzzzzzzz{zzyzyzzyyzz{z{z|zzz{yzzzyyzzz{{z{yzzyyyzyyz{{z{{{zxyyzyzzzzzzz{y{zzy{{zzyyzzzzzz{zyzyzzzy{z{{z{{|zyyzzyz{zz{zz{{{{zyzzzz{y{zz|{{|yz{zzzzyz{{{{|zzz{{{zzzyzz{z{{|{zz{zzzzy{{|{zz{{{{zzzzz{{z{|z{{{z{{z{z{{{{{{{{|{{zzz{{zz|{{|{{{{|zzzz{{z{{|zz{{z{|z{{{|{{|{{|{|{{{{zz{z{y||{{|{||z{{zzz{{{{z{|{||{zzzyzz{{|{{{{{z{z{{zzz{|{|||{|zzz{yy{{z{{||z|{{{{zzzz{{z{{{{||zzzzzz{{{|{zz{z{y{zzzzyzz{z|zyz{zzzzyzzz{{zzz{z{z{zyyzzyzzzy{{{{z{zyzzzzzyzzzz{zzzzzzyyyzy{y{zz|yzzzyz{yz{zyz{{zyzzyyzyyyz|zy{z{zyzzyzzy{yz{{{{zzzzzyzzzzzzzyzzz{yzzy{yyz{z{zz{zzyzyyzyzz{z{zz{{zyzyzyzyyz{zz{z{{zzyyzyyyyzzz{z{zxzzzyzz{z{{{z{z{yzxzyzy{z{z{z{{xzzyzyzz{zzz{{{{zz{zzzzy{zz{{{{z{z{zzy{y{{{zz{zz{zzzzxzz}{|z{{{zz{z{y{{z{{{z|{{z{{zzzzz{{{{{{{{|{zz{{zz{{{{{{z||zzz{z{zz{|{{{{z{{zzzzzzz{|{{z{z|z{{zzz{{{|{{{{{|{zz{{z{z{|||{{{|zz{{zz{z{z||||{{{z{{{zy|{zz{|{||{|{{{z{z{|}|||z{{|z{z{z{{|{|{z||{{y{zz{zyz{{{z|{z{z{{{y{{||zzz{zz{yzyzzzzz{zzzzzzyzzyyzzz{z{z|z{z{yyyyz{zzz{z{z{{yz{yzzyzz{zyz{|z{zyyyyyyz{{zz{|zzzzzzzyz{zzz{{zzxyzzzyyzz{zz{zzzyzzzzyzz{{{z{y{zyyzyyyyz{z{zzz{zzzzyzyz{yzz{z{zzyzzyyyyz{y{z{{yyzzyxzyxzzyyy{zzzyzyzzzzz{z{z{{zzy{z{zzyzz{{z{|zzzzzzzzzyzzzz{z{zzyyzyzz{{z{zz{{zzzyzyzyz{{zz{{{{zzzyyzzyzz{z{{{zzz{zzzz{{zzzz|{{zzzz{{z{{{z{{{{z{zyzzz{{|z{{zzzzzzyzz{{{{{|{{{{{zz{zzzzz{{{{{{{{yz{y{zzz|{{{{{|{{{z{{{zz{{{{{{z{zz{zzzz{{{||{{|zy{zzz{z{z{|{z}{{zz{{zyzzz{|{{{|zz{zzzzz{{z{{z{|z{zyz{{{z{{{||{{yzzzzz{z{zzz|{{z{z{zzzyy{{z|{{zzzzzzzyzyyz{{zz{zzzyzzxzz{zzzzz{|yzy{zzzy{z{{{z{zzyzz{zxyzzzzyzzzzzzyzxyy{zzyz{{z{y{yzzzy{{zzzzzyzyzzzzzzy{zzzzzzyzzyzzyyz{z{z{z{zyzyyxzzyzz{z{zy{zyyyzzyzzz{z{{{{zzzyyzz{z{zz{{{zzyzyyyyyyzzzy{z{yzzzzzzy{zz{zzzyzyyyzzyz{zzzz|zzzzyzzzyz{{{{{z{zz{zyyzz{zzzz{{{zz{zyyyzz{zzz{|z{zzzzzzzz{{z{{{{zzzzzzzy{{{{{z{{zzz{z{yz{zz{{{z{zzzz{zz{z{|{|{{|{zzzzz{{zzz{{|{||zz{yzzz{{{z{{{{{zzzzz{z{{{{{|{{{{yzz{{zz|{z{|{{{{zzy{{{z|{{{{|{|z{{zz|{{|z{{||{{zzzz{{{z{{{|{|{z{{zz{z{zz{z{{{|z{zzz{z{z{{{z{{z{{yz{zzzz{{{{z{{{zzzzzzy{{{zz{{z{zzzyyzz{{zzzz{zyzzzz{zzz{zy{{{z{{zyyz{z{z{y{{{zzzzzzyyy{z{{{zz{zzzyzyyy{yzzz{z|{zzyzyyxzz{zz{{zzzzzzzyzy{zy{z{zyzyzy{zyzz{zzz|{zyzzzyyyzz{{zzzzyyyzyzyz{z{{{z{zzyzzyyyzzyzzzz{zz{yzzyyzz{z{zzz|{zyzzzzzy{z{z{zzyzz{zzyz{{{zzzzzzyyyzzzyzzz{z|{|zzzzz{zyzzz{z{{|zzzzzz{zzz{z{{{{{zzzzzzzzz{{{{{|zzzzzzyz{{{z{{{{{y{zzzz{{|z{{{{{zzyz{z{{zz{{{|{{{zz{zy{zz|{{z||{z{zz{{{{z{{z{{|{{{zzz{{zz{{{{{{|{{z{{{{{{|{z||{{{z{zy{z{{}|{{||{{z|{z{{z{||{|{|{{z{{zz{{{z{z{{{|{{z{{z{{|{{{{{{{{|{zzz{z{{{{|||{|{zzzz{zz{|{z{{{zz{zzz{z{z{{zzyzxyyy{yzzz{{yy{z{zzzyzyzz{z{zzz{{zz{z{yyyzzzyzzzzzyzzzyyzzzzyzzz{yz{zyyzyyzzzzz{zyyzzzzzyzzzzzz{z{y{yzxzz{zyzz{yzyzyzyyyzzzz{zzzzxyyyyyyzzzyzz{{zzyyyxzzyzzzzzzz{zyzyyzzxyz{zyz{{yzzzyyy{yzzzz{zzzzyyyzyxyyzyz{zzz{zzzyzzz{zzzzzzzzyy{zz{{y{zyzz{yzz{zyzyzzz{zz{zzzzyyzyyzzzz{{z{{yz{zyzyz{{|zzzzzy{zzzzy{{{{{z|{zzzzzzz{z{z{z{{zzy{{{yzzz{z{{{{{zzzzy{{z|{{|z{{{zyz{z{y{{{{|z{{{{zy{zzzzz{{z{zz{z{{yz{z{zzz{{z|{|z{{zzz{z{{{|{|{|y{zz{z{{z{{z{{{{z{zzyzzz{z{{{{{{z{{{{z{{{{{{|{z{z{z{{yz{z{{z|{zzzyzzzzzz{{{z{z{{{{zzzyy{{{z{zzzzzyzyzzyy|{z{{{{zyzzzyzzzzz{{{z{z{yyzzyy{{zzz{zy{zzzzzyzy{{{yz|{zzyyzzzyzzzzy{{{zzzzzzyyxzyzyzzzzyyyzzzy{zzzz{{zzzyzyzyzzyz{yzz{yyyzyzyzzzyzyzzz{yyyxzyzzzzzzzzz{yz{zzyyz{yzzz{zyyzzyyzyzzzzz{zzzzzy{zzyzz{zz{zzzyzzz{zzzzz{zz}{zyyzyzzzzzzzzzzyzz{{zzyzzz{{{{{zz{yyzyzzzz{{{z{{zyzzzzzzz{zz{{{{zzzz{zyz{{{zzz{z{zz{zzzy{{{{z|z{zz{zzzzy|{{{{{{{z{zzzzz{|{z|z{{{{zyzzyz{{|z{{z{{{y{zz{{z{{|{|{{{{y{zz{{z{{z{{{z{{z{{zzzz{|{{{{||zzz{{{z||{{z{|{zzz{{yzzz|{{{{{|{{z{{zy{{{{z|{|{{{zzyz{|zz{zzz{{{{{zz{zzzz|z{|{{{zzz{zzzyz{{{{{zyyzxzzyzzzzzz{z{zzyzyzzzz{zzz{{{{{z{yzzyyz{zz{{{z{yzzzzzzz{{zz{{zzzyzzzzyzzz{z{z{yzyzyzzxzzzzzzzzzzzzzzx{y{{{yz{yzzzxyzyyz{zz{zzzzyyzxzyzzz{zzz|zzxzzzyyyz{|zz{{{zzzyzzyyzzz{z{zzzzyyzyyyyzzzz{z{zzyzzyzzz{zzz{{{{zzzyzyxz{zzz{{{zzzzzyzzy{{{z{{{zyzyzzy{{zzz{z{{zzzzzzyyz{{{{|z{zzzzzy{{z{zz{|{{zyzz{zxz{{{z{|{{{zzzzzzz{{z{{{zz{zzzzzz{{z{||{||zz{{z{zz{|z{|{{{{z{{{zzyz|z|{{|{{zzzzz{{{{{{{{{{{z{{{{zz||{z{{{|z{z{z|{z{|{|{{{{{{{{{z{{{zz{{{{|{z{{{z{{||z{{{{{{z{{{{{{{z{|{|{{z{zzzzzzz{{{{|{|z{zzyzzz{{{zz|z{zyz{zz{zz{zzzzz{{yzzzzzzyz{{zz{zzzyzyzyz{zzzzzz{zzzyxzzyzzzz{{{{zyyzzyxzz{y{zz{zyyzyyzyzyz{{{{zzzyyyyzzyz{zyz{zz{{yzzzyyyzzyzzzzzzzyyyyyzzz{zzyzyzzyzxzyzz{{z{{zyyzyzzyy{yyzzz{z{zzzyyzyzzz{zz{zyzzzzzzzzz{zzz{yyyyyyyzyyzzzzzzzzzzzyzyy{z{{z{zyzzzyyyzz{zzzzzz|zz{yzyzxyzzzz|{zzzzyxzy{zz{zz{{{zzz{{yzx{{z{{|z{zz{{zzzzz{|{z{{{zz{zzzzz{{{{zz{{z{zz{zz{z{{||{z|{zz{zz{zzz{{z{{{zzzzz{z{zz{{{{|z{{zz{zz{{|{z{{{|{z{zzzz{zy{{zz|{{z{{zzzz{||z{|z{zz{{zzzz{zz{{|{|{zz|zzzz{{{z{{|||zyz{{zz{{z||{|{{zzzzz{zz{{{{{{{{{zyy{zzz{{|{{|{zzzzyyzz{z{{zzz{z{yzyzzyz{zzzz{{zzzyzyyzz{{{{z|{zzyzyyzyzzz{z{{zzyzzzzyz{{{zyz{|zzzzyyyyzzz{{z{zyyzyzzyy{zzzzz{zzyyyyzxy{zyy{{zzyzxyzyyyzyzzz{z{zyzzzyzyzzzzzzzzzzzzyzyzz{zyzz{zyz{zzyyzyz{{{{{{zyyzzyyyyzyzzzyzzyyyyzzyxzyy{z{z{zyyz|yyzyzzzz{{zyzyzzy{z{zzz{zz{zzzzyyzzzzzz{{{yz{yzyyyzzz{{{z{{zzzyzzyyz{z{{z{zyzzzyzzz{zz{z{{zzzzzzzzz{{{z|zzzy{{z{{zz{{z{{z{zz{{zz{zz{{{{{{{{zzzzzzzz{|z|{|zz{z{{z{y{{{{{{{{zz{{{z{z{{zz{{zz|zz{z|zz{|{{{|{||{z{zzz{z{{{{{{z{z{z{{zzz|{{{z{{{z{zzzzz{{{{{z{{{zzz{zzz{{{{{{{{{zzy{zzz{z{|{{{{yz{zzyzz{{{z{yy{zyxyzyyyyzzy{{z{zzyzzxzzzz{{{{zzz{{zzzzzz{z{{{{{{yzyyyzz{zz{{{z{yzzz{yyzzzzzzyzzzyyz{yzzzzzzz{zzzzzzzyyyyz{{y{zzzzzyzyzzzzyzzyz{zyyzyyyz{zzzzy|xzzzyyzyzz{yz{zy{zyzyyzyzyyzz{zz{zzyyxzzyyyzz{{z{zyzyzzyyyzzyz{zzyzzzzzzyzyy{z{zzzzzzzzzzzz{{{z{{zzyyyzzzzz{zy{{{zyyzzzzzy{{z{{{{zzzz{zzzz{z{zzzz{zzzzyzz|{zz{z{zzyzzzzzyz{{z{zz{{zzzzz{z{|{{{{{{{{{zz{{z{{{{{{{{zzz{z{yzzz{{z||{{yzzz{y{{{{{{{{|{z{zyz{zzz{{|{z|{zzzz{zz{|||{{{|zz|{{z{z{{{{z{{{|z{z{zz{{{{z{{{||{{z{{z{{{{{z{|{z{yz{zzzz{{{{{|{{yzzzzzyz{{{z{zzzzzzzzzz{{{zz{zzyzzyyyyyyzz{{z{zzzzzzyzz{z{zz|{z{yzxzzzzzzyzz{z{{zzzzyzzzz|zzz{{{{zzyyyxzz{{zz{{zzzyyzzyzzz{z{|z{zzzzyzyyz{zy{z{yzzyyyyyzzy{zzyzzyyyzzzyyz{{zz{zyzzzyzxzz{z{zzz{zy{zyzzxzzzz{{{{z{{zzyyyz{zyzzz{zzzzzxyzyzz{{zzzzy{zzzzy{z{{zz{|zz{zzyzzz{z{zz{z{{zz{yzz{z{{z{{{z{zzy{yy{{{z{{zzzzy{zy{zz{{{z|{{{yzyz{zz{{{zz{{{z{{yz{zz{||{z{{{{zzz{zz{{z{{y{{|zyz{{z{z{zz{|||{{zzzzzzz{{|{|{{||zz{{z{z{|{{{|||zz|{z{{{||{{{|||{{z{z{{{z|z{{{{|{zz{zyy||z{{{|{{{{{{{zz{{{zz{{{|zz{{{z{z{||{{|{{zzzzzzzz{{{z||||||{{zzzzz{{{z{{{z{zzyzyy{{{z{zzzzzzyzxyyy{zz{zyzyzyyzyxzyzyz{{zzyyzzyzzyzz{yz{{zzyyzzyyzyzz{zz{zzyzzy{yyz{{{yz{{xzyyyzyzzzzzyz{z{zyx{yzyzyzyzz{zzzzxyyxxyzzyzz{zyyyyzyyzz{zzyzzzzzyzyzyyzzzzzzyzzxxxyzyzz{zzzzzzyyyyyyyyy{zyzyzzzzxyy{zyyzzzy{z{zzzyy{yyy{|zyz{{{zzyyyyzzzzz{zz{zzyyyzzzzyz{zz|zzz{zyzzyz{{zz{{zzyz{yzyz{{yzzz{z{yzyyzyzz{z{yz{z{y{z{yzz{{z{zzzzyzz{{{zzz{z|zz{{zzzyyzz{z{z{{{|zzzzzzzzy{z{{{{z{{z{z{z{z{|z{{z|{z{zz{zzzz{{z{{{{z{zz{zz{{|{{{|{}{y{z{{{z{z{{|{|{{zzzzzzzz{{{z{||zzz{{{zz|{{zz{{{zzyzzzz{z{{|{{z|z{zzyyyzz{z{zz|zzzyzzyxyz{{y{zy{zxzzyyzyzz{z{z{zyzy{zzyyyyz{zzzz{zzzyyzyz{z{{{zzzzz{yyzzzz{zyzz{zzzzzzzy{zzzzz{{z{zzyzzzz{{zzz{{zzzyzzyzzzyzy{z{yyzxyyxyyzz{z{zzyzyyyyyxzzyz{z{zzzyyyzyzzz{z{zz{zzzzzzzyz{zzzz{{zyyzyyzyyzzyzzz{zzyyzyzxy{zzz{zzzzzzy{y{zz{z{{{{zyyyzzyzzz{zz{{{zzzzyzyzzzz{zz{{yy{zyyzzz{z{{y|{zz{zzzy{y{{{z{{zzyyzzzzyzz{zz{zzzzzzzz{z{{{{{zzz{y{zz{{z{{{{{{z{{{zzzzz{{{z|{{{{zz{z{zz{{{z{{{{{{zz{zzzz{{{{{||{zzzz{{{zz|zz{{z{{zz{zz{z{{{{{{|{{z{y{{zz{{|{{z||{z{{{{{z{zz{{y{{{zyz{yz{{{z|z{{{{zzz{zzz{{z{z{z{{z{zzzzy{{{zy{z{zzzzyyzyzz{{z{z{zyzzyzzyzz{|{yz{zzzzyyzy{zz{{{zz{yzzyzzyyzzzz{{{zzzyzzzzy{{{z{{{zz{yyzyyzzz{y{z{zy{yyzzyzzzzzz{zyzzzzzyy{{{z|z{zyzzyzzxzz{{|z{z{zyzyzyzz{{zzzz{zzyzyzyyzzzzz{{{{zzzzyzyyzz{{z{z{zyyzzzyyz{zz{zz|yzzyzyzzzzzzzzz{{zzzzzzxzyz{z{zyzyzzzyzzz{zzzz{{zyyzyyzyzy{{{{z|yzzy{yzz{z{{z{{{zy{zzzzzz{zz{|zzzzzzzzzzz{z{z{|{zz|z{zz{{{{z{{z{zzzz{{z{{|z{||{{zzzz{z{z{zz{{{{{zzz{zyzz{z{{{|{|{zz{zz{z{{|{{{|{{{{z{{{{|z{|{|||{zz{{{{{y|{{{||||zz{zz{{{{{{{{{{zzz{{zz{{{{{{||{{{{{{zzz{{z{{{{{z{z{z{zzz{z{{{|{zz{{z{zzzz{zzz{{zz{zzzyz{z|{{{zzyzzyxzxyxzzzz{{z{yyzyzyyyyzzzz{{{zzzyzzzyzzz{z{{zzzyzyzzzzzzz{z{yyyzzxyyzzz{zzz{zyzxzyyyz{zzy{{zzyzzyyyyzz{zzzzzzyyyzzyyzyzzz{zzzyyyzyyyzzyzz{zyzyyxyyyyyz{z{{z{zzyxyzyyyzzzz{zzyyzzzyzyzzzyz{zzzzyyyyyyyzzz{zzzxyyxyyyzzzzzz{z|yyyyzzzy{z{{{{zzzy{yyzzzz{zzz|{{zzzzyyzyzzz{z{{zz{zz{zzz{{{zz{zz{zzyzzzzz{{z{{|{zz{zyzyzzzz{z{{{{z{zy{zz{z|{{{zzy{z{{{{z{{{{{{z{zzzzzyzz{zz{{{{z{yzzzzz{{{{z|{{|{zzz{{{zz{{|{{{z|zz{yz{z{{|{{{{{{y{{zz{yz{{{|{|{{z{{{zz{{zz{{{{|{z{{zzzzz{z{{|{{z{{yzy{{z|y{{{{{{{y{zzzzz{z{z{{y{{zyzyzyz{{{zzzzyy{xzzzy{zzyzy{zzz{zyyzzzzz{x{{zzzzyyzyzzyzzz{zzzy{zzyyyyyz{z{{zzxzyyxyyzzzzzz{zxzyyyyzyyzzyyzyzzy{{yyzyzzzzz{zzzyzyyyyzzyz{zzz{zzyzyyyyzyzzzz{zzyzyzyyzyz{zzzz{zyzyyzyy{{zy{{{zzzzyzyzzy{zzzzzzzzzyyyyzyzzzzzz{yz{yzyyzzyzzzz{zzyzzzzyzzzz{{zz{zzyzyyzyzzzzz{{{yyyzzz{zzz{zzzz{zzzy{zzzzyzz{{{zyz{zzyzzzz{{{{{{zzzzzzz{{zzz{{{{{zzzzzzy{{{z{z{{{zz{yzzzzzz{y{z{zzyzyzzyz|{{z{z{zz{zyyz{||{z{z{{yz{z{{{z{{{{{{{{{zyzzzzzz|{|{|{{{z{{zz{{{{z{|{{{{{yzz{z{{|{{{{|{zzzz{zy{{{{z{{{{zzzzzyzz{|z{z{{{{zzzzzzzz{{z{z{yzzyzzzzyy{z{{{yzzyyyyyyzzzz{zzz{zzzyzyzxz{zz{{zzzzyyzyyyz{yzz{zz{zzyzzyyyz{zzzyzzzyyyyzzyzz{z{{zzzz{zzzzzzzzz{{zyyzyyzyy{zzyzzz{yyxyzyyzzyzy{zzzxyyyyyyzyzyz{zzzzyzzyzyxy{{zzzzzzyyyyyyz{zz{zzzzyxzyzzzyxzzyzz{zzzyzzyyzy{zzz{{{yyzzzzyyyzzzzz|{{yzyzzyyz{zzzzy{zzzzzzzz{z{{z{{zzzyyzzzzz|z{yzzzz{{yyxyzzzz{{{{zzzzz{{zy{zzz{z{zyyyz{zzz{{{z{{z{zz{z{{z{zzz{z{{{{zzz{z{|{{{{{z{{{zzzyzzzz|{zz{{z{yz{{zz{|{{z{|{y{z{z{{{zz{{{{{{|{y{z{{zzz|{{{{{{{{{zzy{{z{{{{{{{{{{zzz{y{{{z{{z|{zzz{{z{{{{{z{{|z{zzzz{z{{z{{{{{zzyzzyz{zzyzz{{z{zzzzyzz{z{zz{{zzyyxzzyzyzz{z{{{zzzyzyyyzzzz{zz{{yxyzzyzzzzzz{z{zzyzyyyyzy{{zzzzzyzyyzyy{zzz{zzzzyy{zyzzzyyzyzy{{zyyzyyyzz{{zzzzzzzyyzyzzzyzzz{yyzzzyyyyzz{yz{zyzzyyxyyyz{zyzzzzzyzyyzyy{yzzy{{{yyyyzzzyz{zyzzzz{zyzzzyzyzy{z{zzzzyyz{{zzz{z{z{zzy{yzzzzzzyzz{zzzy{zyzzzzzy{{{{{zzzyxz{z{{zzz{zz{zzzzyzy{{{|{zzzzyzzzzzzz{{{z{{{zzzz{zzz|{{{zz{|zzz{zzwzz{z{{{{{{zzzzzzy{z{{{{{{zzzzzzzx{{{{{{|z|zz{zzzz{|{zz|{|{zyyy{{z{{z|{{|}{zzzyz{z{|{{|{{{{z{{z{{zz{z{{{{z{{{zz{zzz{{zz{{|{zz{zzz{z{{{{|z{zzzzzzzz{{{{{z{{{{zz{zyz{{{{{z{{zz{zzzyz{zzz{z{zzyyzyzzzzzzzz{{{zyyzzzzz{zzz{zzy{zyzyyzyzzzzzz{zzyyyzyzz{yzzzz|{zzzzyzzy{zzzzz{{zzyzzyyyz{|{yzzzyzyyyzyyz{{zzzzzzyzzyyxzzzzzz{yzyyzzyyzyz{zzzz{yyyzyyyyzzzzzzz{yzz{yyyyyyzzzzzz{zyzyzyzy{|{zzzyzzzzyyzyyz{z{y|{{yzzyzzyy{z{z{z{zzzzyzzzzz{z{y{z{zyzzzzyz{z{z{{{zzzzyyzzz{z{zz{{{{zzzzz{z{yzzz{|{{{zzzyzzz{{zzz|{{zzz{zyz{|z{{z{zzzyz{zyzzz{|{{{{z{zz{y{z{{z{{{{|{yzzyzxzz{{{{{{{zzzzzzzz{|{{{|{{{{{{{{{{zzzz{{{{{zz{zzz{{||||||{{zz{zz{{z|{{{{{zz{z{zzy{|z{|{z{{{{{{{zz{{zz{{z||z{zzyzz{{{{|{{{zz{{z{zzz{{{{z{{{{y{zzzz{z{|{{zyzz{zzzzzzz{{zz{zzyyyyyyyyzzzzzz|z{zzzyyyzzyyz{|{{z{zzyyyyzz{zzy{zzz{xyzyzz{{yzzzzyyzy{zyy{|zyyzzzzyzyyzyzyzzyzyzzyyyyzyyzzzy|y{zyzyzyyyyyyzzzzzzzzxxzyyyyzy{zzzzzzzyzyzyyz{zz{z{{zyzyyzzyyzyyy{zzzzyyyzyyz{z{z{{zyyzzz{yyzz{{yzzzzzyy{xzzz{{z{yzzzzzzzyzy{zzzzz{|yzzyzyzzyzz{{{z{zzzz{y{zz{{|zz{zzzzyzyzzzz{zzzz{zyzzzzz{z{{zz|z{zzzz{{yy{{{{{|{zzz{zyzzz{{z{z{{|{zyzzzz{z{{|{||{{zzzyzzz{{{{{z{{zzz{zz{{{zz{z{{{|yz{|z{yz|{{{||{zzzz{y{{{{{{|||z|zzzzzzzzzzz{{{{{zz{{zy{||z{{z}{{{y{yz{yz{{{{{{{zzyxyzzy{{z{z{{{zzz{yyyzz{{z{{{{yzyzzyzyzz{zzzz{zzzyyzyyzzz{{{z{zyzyzzzzzz{{zzzzyzzxyyyzyzz{yy{{zzyyyyzyz{zzz{z{zyzyyzyzyzzz{z{zzzzyyzyy{{{xzzyz{yzyyyzzyy{{zzz{zyzzzyxxyzzzzz{zzzzzyzyzzzzz{zzzz{zyxzyz{{yzzz{zzyyzzzzzz{zzzzz{zyzyzyzyzzzzzz{{yyz{{{yyzzzzzz{{zyyzyyzzzz{zzzz|zyzyzyyzzzzzz{{zzzzyzyz{zzzz{{{{{zzzzyzzz{z{{{{{zzzzyz{yz{{{zz{{{zzzzzzz{{{{{|{z{yz{zzz|zz{{{{|{zzy{zzzz{zz{{{{{{yzzzzzy{{{{{{{{{yz{{zzz{{|z{{{|y{{yy{{{{{{{||{||zzzz{{zz||{{{{{{zzzzzz|{{{|{z{{{zzz{{{z{{{{z{{{zzzzzzyzz{{{z|{{{{zzzzzz{zz{{{z{z{zzzzzy|zzzy{z{zzyy{z{zz{{{{z{zyyzzyzzyzzzzzzz{y{zyyxzy{zz{zzz{{{zyyyzz{zzz{z|{yyyzyzyyz{zz{z{z{zyyxyzxy{yzzzzzyyyzzzzyyzzyz{zyzzzzyzyyzzzzyzzyyzyyyzzzzyy{z{zzzzyzzyzzzzz{yz{zyyzzyzzyzzzz{z{{zzzzyzyyz{zzz{zzzzzzzzzyyyzzz{z{yyzyzyyyzzz{{yzzzyzzyyyyzz{{z{{z{zzz{zyzzyz{z{{zzzy{zyzz{zzzz{z{yyzyyzzyz{zzzzz{zzzzz{zy{{zz{|{zzzzzyzzzz{|{yz{{{zz{yzy{{zzzz{{{{x{zz{yz{{{|{|zzzzzzzzzz{|{|z{|{zy{{zz{yz{z{{z{{zzz{{z{z{{z{zz{{zy{{yz{{zz{{{{{{{zzzz{zzz|{{{{{{{zzzzz|y{{{|{{{{zzzzz{{{{z{{{{{|{{{zzz{{|{z{{|{{z{zz{y{zz{{z{{|{{z{zyzzz{{z{z{{{zzzz{zzzz{{z{zzzzyyzzzyyyzzzzyz{zyyyyzyyzzzz{zz{zzzyxzyyzz{z{{{{{yzyzyzzzzzzzz{zzzzyyyzxzz{yzzzzzyzyxyyxz{zyzyzyyyzzzyyyyzzyzzzzzzyyxzyzzzzyyzzzyyyyzzyyyzzyyyzzyyzyyyyyzyzzz{zzzyyyyzyyz{zz{y{{{yzyzyzzzzzzzz{zzyyzzyxyzzzzzzzzyz{{zxyyzzzzz{{{zzyzzzzyzz{zyzyzzyzzyyzz{{zyz{yzzz{zzzyzz{z{z{{{zzzzzzzyz{zzz|{{zzzzyzyyzzzzzz{zzzzzyzzzz{zz{{{{zzz{{zzyz{zz{{{{zyzyzzz{z{{{{z|{z{zy{zyyzzz{zz{z{y{zzz{z{{{z{{|{{zzzz|{zy{zzz{z{z{zzzz{z{|{||{{|}zz{zy{zz{{{{{{{zy{{{yz{z{z{{z{|{{z{{yzyz{{{|{{|{{z{zzz{yz{{|{|{zzzzzzzy{{{{{y{zz{zyyyzzzzz{{zzzyyyyyzyy{z{zyzz|zzzzzyyyzz{zz{{{zzyz{yyy{{zzzy{z{yzzzyzzz{z{zx{zzzyzyxyyzzzzyzz{zzyyx{zwzzzyy{zzzyzyyzyyyzzyzzz{zzzyyzyy{zzyyz{zyxyzzyzyzyzz{zzzzyyyyyyyzzyzzz{zzzyyzxyyyz{{yzzzyz{yzyyyzzzyz{zzzzzyyyzzy{zzz{z{zyzzzyyy{zzz{z{{z{yzzy{z{zzz{{zzzyzxzy{zzz{{zzzzyzzzzyzy{{{zzy{|zzz{zzyyz{{z{{|{{zzz{zzyzz{{{{|{{yzzyz{{{{{z{z{{z{zyz{zz{z{|{z{{{zzzzzyz{zz{{{|{zzzzyzzzz{z{{{zzzzyzz{zz{z{z{{{{{zz{z{z{z{z|z|z{yzzzzz|{{||{z{{z{y{{zz|{{|{|z{{z{zy{zzzz{zz{{{{||{{zzzz{{{{{{{{{{{zzzzzz{{z{{|z{zz{zz{zz|{{{|{{|zzzzzyzzz{{|zzzzzzzzzzzxyz{zz{{{z{zzyyzyz{z{{{{{{zyzyy{zzyzz{z{zzyzzyxzz{y{zz{zzzzyyyyzyzzzzzzyzzzzy{xzyz{zz{z{zyyzyyyyyzzzzzzzzyyzyz{zyzzy{{zzyzzzxzzyxzzzzyzzyzzyzyzyyz{zzzzzz{zzyyzyyzzzzzzz{zzzzzzyy{zy{zzy{yzzyzzzyyzzyzz{zzzyyyzzyyzz{{{{{zzyzzyzzz{zzz{{{zzzzzzzy|{{zz{z{zzzyyyy{{{zzz{{{yz{z{zyzzzzz{{zzzzzzzzzzz{{zzzzz{y{zz{y{z{{zz{{{zz{y{{zz{z{{{{|{yz{yz{z{z{{z{{{|zzy{zyzzzz{{zz{{{yzyzzzz{|{{|{{{yz{zz{{{z|{||zz{|z{zzzzzz|{{|{z||{{{y{z||{z|{{|{zzz{zzz{zz{|z{{{{zzz{zzz{{{{|{{{z{zzz{zzyzz{{{{{zzzzzzzzyz{|z{{{y{{y{yzz{{{{|zzzyyyzzzyyyzzyyyzzzyyyyzyx{zyz{{zzzyzyzzyyz{z{zzz{zyzyyyyyyzzzzzz{yyyxyyyyz{zzz{z{{yyyzyzzzzzzzz{zyyyyzyyyzz{z{zyzzyyyyzyyyzyzzzy{zzzyyyzyzyzyyzyzyyyyzzxyzzzzzzyzzyyyxzyyzzzzzzz{yyyyyxyyyzyzyzyyyzyxzzzzy{yyzzzzzzzyzzyyy{zzyzzzzyyyzyzyzzy{yzyzzzyyzyyz{{{zzzz{yzzxyzyyzyyzzzz{z{zyzyzzzzyyz{yzzzzzzzzyz{{y{{zzzyy{zzzy{z{{zz{{zzyzzz{zyz{z{{zzz{zzyzzz{zzzz{zz{zzzzyzzzzzzz{{{zy{yzzzz{{{{|{{|zyzzzzzy{zz|{{{{zzzzz{y{z|{|{z{z{zzzzz{z{{{z||{{{zzzzzz{z{{zzz{{{zz{zzyz{zz{{z{{zzzzz{yyz{z{z{{{{zyzz{yyz{{z{|{{zz{zzyzzz{zz{yz{zzyyzyzyzzz{zzy{xzzzzyyy{zz{zzz{zzyzzzyz{zy{z{zzyzzzyyyzyzz{yzy{yzyzzzyyzy{{z{zzzzzyzyyyzyyyzzzzzzyyyyzzy{zzyzzyzzzxyzyyzzz{yzzyyzzzyzyzyzzzz{{zzzzzyzyyzyyzzzy{yyyyyzzyzz{yyzzzzzyzzyyzzzzxzz{yyz{yzzyyzzyyzz{zzyzzzzyyz{zz{y{{zzzyyyz{z{zzz{{{zzyzyyzyzyz{{zzzzzzzyzzzzzzz{{{{{zyzyzyyzyzzzzz{zzy{zzyzzzzzzz|{{zzz{yy{{{{zz{zzzzzyzzzz{{{{z{z|y{zzyzzzzz{zyzz{zzzzzzzzz{{{|{z{zz{zzyzzz|{z{{z{zzzz{{zzzz{{|{|z{zyzzzzz{|{z|{|{{z{y{{zy{{{||{{{zzz{{zzz{{{{{{z{|zzz{zyz{|{{{z{zzzzz{y{zz{{{{{|{z{zzyz{z{{{z{{z{yzzzzyzz{zz{zzzzyyyzzzyyzz{zzzzzzzyyzyyyzzzyzz{zyyzyzyzz{zzz{zzzzyzzzyyzzz{zzz{zzzyyyyzzzz{zzzz{zzyzzyzy{{zyyz{zzzzyyzyyzyzz{zzzzyzzzyzy{zyzz{{{yyyyzzyyzzzzz{zyyzyyyzzzyzzz{{{zzzzzyyyyzzy{zzz{zyyyzyzzyzzzzz{yzyyyzyzyyzzyz{z{zzzyy{zzzzzzzzz{zy{yzzzy{{z{{zz{zzzyzyyzzzyzz||{yyzzyzzyz|{zzz{{{yzzzzzz{{z{zzzz{zzyzzzzzzzzz{{z{zzzzzzz{{{zz{{z{yzz{zyzz{|z{{{{zz{yzzzz{|z{{{{{z{zz{yy{z{{||{{{|{zz{zzz{z{z|{|{zy{z{{{zz{{zzz{{{zy{zz|z{{|{{{{z|zzzzz{z{|{{{{{{zzz{zzy{z{z{{||{{z{z{{{z{{{{y|{{zzzyzzzz{{{{{|{{{zz{y{z{{{{yzzz{{zzzzzzyz{{zzzzzzyyyyyxyy{zzy{z{yzzzzzzzy{zzz{z|{yzyzyyyzzzz{{zzzzzzzyyzyyz{zzzzzzzzyzzyzzzzz{z{zzzyyyzyy{yzz{{yzyzzzzyyz{zzzzzzzyyz{zyzz{zzzzz{yyyzzyyyz{zzzzz{zyzzzzyzz{{zz{{{zzyzyzyyzzzzzzzzxyzyzy{yyzzyzzz{zyyxyyxyy{zzxy{{zzzzzzyy{zz{z{{{zzzyzzz{zz{zz{{{zzz{zyz{zy{{{{z{zzzzzz{y{z{zz{{zzyzzzy{zy{{{zz{{zyz{zyzyzz{{{z{z{zzzzzyzzzzz{{{z{zz{zzzzz{{{{{{zz{zzzz{z{zz{{z{zz{z{zzyzz{z{{{z{{zzzzzy{z|{zzz{{{zyzz{|z{|z{{{{|{{{{yz{{y|{{{|||{{z{z{z{{{|{{{{{{yz{zzzyzz|{{||}{{z{z{z{{{{|{z{|zzzyyzyzz{{{z{{|z{z{yzzzz{{{zz|zzyzzyzzyzz{z{{{zzzyzyyyzz{{zy{z{zzyyyyyyzz{{z{{{zzzyzzzyz{{zyzzzzyyzyyyzy{z{zz{zzzzyyzzyy{z{zzz{zy{yyy{zzz{zyzzyyzzyzzyzzzzzy{{zyzzyyzzzzzy{zzz{yzzyyyzzyzzzyz{zyyzyyzyyzzzzzzzzzyzzzyyyzzyzz{zzzzyzzyzxzzzzy{zzyyzyzxyyyzzzy{{zyz{zyzyzyzzzzy{|zzzz{yyyzzz{zzz{zzz{yyyzzzyzz{{zzzzyxyzyz|{zzz{zzzzyzzzz{zz{zzzzzyzyyyzzzz{{zz{{zyzzzzzzz{z{zz{{|zzzzzyz{z{{z{{zzz{zzzzzz{z{{{{{{z{zzzz{{z|{|{|{zzzyzzz{{{|{{{{{zz{zz{{z{zzz{{zz{zzzzzyzz{||{{{|{{{{zy{{{{|z{{{z{zzz{zz{z{{{{|{|{{zzzzzz{{z|z{{|zzzzzyzz{{zz{{|z{z{zzzzzzz{{{zz{zz{zyyyzzzzzz{z{yyyzyyzyz{zzzzzzzyzyyyyyzz{z{zz{yyzyyzyyyzzyz{zz{yzxzyzzzzz{zzzzzzzyyzyzz{z{z{zzzyyyzyyyzzzyzz{zyzyyyyyyyyzzzzyzzyzxyzyzz{z{zzzzzyzxyyzzz{zyzz|zzyzyyzyzz{zz{zyzzzzyyxzyz{{zzz{z{yyyyyzzyzyz{zz{{zzyzyzyy{zzz{zzzzzyzzyyzzzzzz{|yzxzyxyyy{{zy{z{zzzyzyyyz{zz{{z{zz{yyzzyz{{zz{{{yzyzyyzzyz{zzz{{yzzyzyyzzz{{z{zzy{zzz{zzzzzz{zz{zz{yzyyzz{{{{{zzzzzzzzzz{{y{y{{{{zzzyzzzz{{zz{|{zzzzz{zy{|{{{{{zzzzzzzzz{{z{{|{||zzzz{zz{{z|{{{{{{zzzz{z{{{{{{{{{zzz{{{zzz{z{{{||z{z{z{{zzz{|{{{{{zyyzz{z{{{|z{z{yzy{{yzz{{zz{{{yz{zzzzzz{yz{zyzzzyzyyyyzzzzz{{{yyzzzyxzzzzz{zzzzzyyzzyzyzzzz{{{zzyzzyyyzzz{z{zzzyyyyzyyyzz{z{zzzzzzzyzy{yzyy{zz{yyzyyzzyy{zzzzzzzyyz{zzzzzzz{yzxyzyxyzyy{zzzzzyzzxyzyyyzzzzzzzzzzz{yxyyyzzzzz{zzxyzyyzyy{zyzzzzyzyxyyyxz{y{yzz{zyzyzyzyzzzzzz{zyzxyzyyyzzzzzyz{zyzyzyyzzzzzzz{zyzzxyyzyz{zzzyzzzyzyzyyyz{{zz{{zyzyyzzyzzz{|zz{zzyzzyzzzz{zzzzz{zzzzzzzz{z{{z{{z{zy{yzzz{{zzz{{{{zyzyyyz{{|z{{|{zzz{yzzy{z{zz{{{{{{yzzzzzz{zz{{{{yzz{z{zz{{zz{{{zy{z{zzz{|{{z{z{{yzz{zz{z{|{z{{|{{zzzzzz{{z{|{{|z{zyzzyy{z{{z|{{|zzzyz{zz{z{yz{z{zyyyyzy|z{zz{z{yzyyzyzxzzzyz{z{zyyzxyyyz{{{z{zzzz{yyz{yz{zzzz{zzyzyyxyyzz{zyzzzzzzzyyyyzz{zzzy{yyzyyyyyz{zyzz{{yyzzzzzyzyzzyzzzzyzyyyyyzzzzyzzzzyzyyyyzzzzzz{z{zyyzyyyzy{{{yzzzyzzxyzxyy{zzz{{zyyzyzyyxyzz{zzy{zyyyyzzzyzzzzzz{zyzyyzyyzyy{yzzzyyzyyyz{zzzz{yz{yzzyzyzyzz{zzz|{zzzyzzyy{{{|zzz{yz{yzyzzy{{zz{{{zzyzzzxyyzzzzzzzzzzz{zzyzz|zyzzzzyzzyzzz{{{|{zz{yzzz{zzz{zzzz{{|zzz{{yzzzzz{zz{z{yzzzz{z{|{z{|{{z{zzzz{z{z{z|{{{|z{zzz{{{{{|{{|{zz{zzzz{{{z{|{|{{{zzzzzz{{zz{|{{|{zzz{{z{z{{{{{|{zzzz{zz{{{{z{z|zzyzzzyzzzzzz{{zzyzzzyzzzzzz{{z{yyyzy{{xzzzz{zzzz{zzyyyyzzy{zz{|yzyzyzzyz{zz{zyzzzyyyxyyzzz{zzzzzyzyyzzyzyz{yzzzzyzzyzxyyz{zyz{zyzyzzyyzzzzzzz{yzzzyyzyzzyz{{zyzyzzxyyzyzz{{yyzzyyyyyzyzzzz{zy{yyyyyzyzyyzzzzz{{zxzzzzzyzz{{zz{{zyyzzyyzzzzz{zzzzzyzzzxzz{{zzy{zzzzz{yzzzzyz{{{{z{zzzyyzzy{{z{zzz{yzyyyz{{z{{z{{{zzz|zyzzzz{zzzz{zzzzzzy{z{{zz{zzyyyzyzyyzz{zz{{{{zz{zyzz{{{z{{{{zzy{z{z{{z{zz{{zyzzzzzy{{z{{{{{{zzz{zzz{|{|z{{{z{zyzz{|z{z{{{z|zzz{{yy{z||{{{{|{{zzz{z{z{{zz{{{{z{z{zzz{z{{{{||{zz{zzz{{z{|{zz{zzzy{zz{zz{{{{||{{y{zy{z|{{z{z{zzyzyyyzyy{yzz|z{zzzzzyzyy{{zzz{z{zxyyyzy{y{zz{z{zzzyyzzyyyz{{z{z{zzxyyzzzzzzzz{yzzxyyyyyyyyzzzz{yyzzzyzyyz{zz{zzyzyyyzyyy{{zzzzzzyyzzzyxxyyzy{z{zyyxzyyyzyzzyyzyzyyyzyyyyzz{{zzzzzzyyyzzz{{yzz{zzzzyzyzyyz{zzy{zzzzyyyxzzzzzz{zzzyzzzyzyzzyzz{z{zxzy{yzzzzzz{z{{zyzyzzyz{z{zzzzzyzzyzzzzz{zzz{z{zzzyzyzyyyz{z{zy{yzzzyzyz{{||{|z{zyz{yzz{{{zzz{zzzzzz{zz{z{{{{{|{zz{y{zzzz{z{z{{zzzzzzzzz|{|{{|{{zzzzzzz{{zz||{zzz{{zz{z{{{z{|{{{zzz{zzzzzz{{{|{{z{{zzz{{{{{z{{{{xyy|{{zz{z{z||{|zzzzz{zz{{{z{zzzz{z{{zz{{{zz{|{zzzz|zyy{y{zz{{zzzzyzzzzz{zyzzzyzyyzzyzyyzzzyz{{zyyyyyyyzz{{z{zzzyzzyzyyzzzzz{{zyyzyyzzzz{z{z{{yzzzyyzyy{yzyz{z{zyyyxyyyyzyzy{zz{yyxzyzzyzyzz{zyyy{xyyyyzyzzzzzyyyyyyzyzz{yzzzzzzzzzyyyyyz{zzzzzyyzyyyyzyzzyz{z{zyzyzyzyyzzzyzyzz{xyyyzzyyyyzzyzyzzyy{zyz{zzz{{zyyyzzzzzzzzzz{zzzzzzyyyzzyzzzzyzzz{y{zyzyz{{{z{|zz{yzzzzzyzzz{z{zyzzyzyzzz{y{z{zzzyzzzzz{{z{{{zz{{yzz{yzzz{{|{{|yyz{{z{z{{z{z{{{zyzzyzyy{{{{{|{z{yzyz{zz{{{z{{{z{{{zz{{{yz{{{z{{{zzzzzz{zz|z{|{z{z{zzzzz{{{z{{z|zzzz{zzy{z{{{{|{{{z{{zz{{{z|{|{{zzzzyz{zz{z{{z|{{z{zzy{y{|{|z{{zzyzzzyzzz{z{z{zzzzyyzyyyzzzzyzz{zyzyzyxzzzz{z{{{zyzyzzyyzzy{z{{z{zyyzyyxyyzzzz{zzzzyzzyyzy{zzzy{yyyyzyyyzzzzy|zzzyyyyyzyyzzzzzzzzy{yyyzy{zyzzz{zzyyxyyyxyzzzzzzzyzzyzyyyyzzxzzyzzyyzyyzyyz{{zzzzzyyzyy{yyyzy{yzyzzyyyzyzyzyyzzz{yyzyzyyyyzzz{{z{zyyyyzyyz{yzzy{{yzzyzyyz{z{{{zz{yzyzyyxzzzzz{zzzzzzzyyzyyzyz{{zzzyzzzyyzyz{{{{{{zyyyzyyz{zzzzzzzyyzzzzzzz{{{{zzzz{z{zyz{z{z{{z{{zzzzyzzzz{z{{z{{zy{z{zz{{{{z{z{zzzy{z{zzzzz{{{{zyzz{zz{{z{{{{z}{zzzzzzzz{{|{{z{{{zxzzzz{z{zz{z{{{z{zzzzz{z{|zz{|zzzzzyyzy{z{{z{{{{z{yyzyzz{{y{{zzy{yzyyyy{z{z{zzzyzzyzyyzz{zzzzyyyyyyxzzyz{zyzz|z{yzzyzyzzyzzzzzyyyzyyzzzy{zzz{zyyzyyyyyzyz{{{zzzzzxyyzyzzyzzzz{zyzzzyzxyzzy{{zzyzyyyzyzzzzzzzzz{yyzyxyyyzzyyzzzzxyyxzxzzzyzzzzzyzyyyyyxzzz{z{{{zyzzzyxzyzyzzzz{yzzxyyzyyzzzz{{yyzzyyzyy{z{zzz{{{zzz{xyzzzzzzzzzzzzzyyzyz{{zzzz{yz{{zyzzyzzyyz{zzzzzzyzzzz{{{zzzzzyzzyzzz{{{{z{zzzyyyzyx{z{zz{{z{zzzz{z{{{z{{{zzz{zzzzzz{{z{z{|{{y{zzzzyzzz{{{{{{z{{zz{{z{||{{{{{yzyzz{{y{{{|{{{{zzzzzyzz{zz{{|zzyzzzzzz{{{{{{{{zy{z{zzzzzz{{{{|zzzzzz{z|{z|{|{{z{zzzzzz{{z{{|{{{zyzzzzyz{{{zzzzzy{zyzzy{zz{zz{zyzxzyyzzy{{zyzzzzzzyyyzzzzzzz{{{{zzzyyzy{z{z{{z{zyyzzzzz{zz{zzzzz{zzyz{yz{{{zyy{zzzzzzyyy{{zz{zzzzyyyyyzzz{zz{{zzzzzzzyyy{{zyzzzzz{xxzyz{zzzzz{yz{yyzzyzz{z{zz{zyyzzyyyyz{{zzz{zzyyzzyzzyz{zzzzzyzzzxyyyzyyzzzz{zzzz{zyzzzz{{z{{{yzyyy{zzz{z{zzzy{zzzy{zzz{zy{{{{z{yzyzyzzy{z|{{z{zz{zzyzz{{{{{zzzzzz{zx|{{z{{{zzzzz{zyzz{zy{z{{zyzz{zzyz|{||z{{zzyzzyzyz{zzzz{|{zy{zyzzz{|z{z{{{{yz{|zz{{{{{{{zzzz{y{zyz{{z{{{{{{{{{zyzz||{|{{{{zzzzzz{|{z{zz|z{zzyzzzz{{{{z|{{{zz{zzzz{{{{{{{{zzzzyzyzzzzz{{{{|zzzzzzzz{{{{{{{zyzzzyyz{{{zzzyzyyyyzyzyz{zz{zzzzzzzyyzyzzz{zzzzyyzyxzzyzzz{{z|zzzyzzzxyyzz{zzz{zyzyyzzyzzzzzzz{zyzyyzyyz{zzx{{zzyzzzxyzzyzzy{zzzzzyxyyzyzz{zzzzzyzyzzyz{zzyzzzzyxzxzzyz{z{zzz{zzzyyyzyxy{z{zz{{zyyyzzzyyzzyyzzyyyyyyyzyz{yy{z{{zyzyy{zyzz{zy{zz{yzy{yy{zzzzzz{zzx{zyzzz{{zzz{{{zxzzzyzyzzzzzzzzzyzyzzzyz|{{y{{z{zzzzzzyzzz{z{{{zz{zzyzz{{{z{z{zzzzzz{zzzzz{{z{zz{zzzz{z{{z{{{{{zzzzyyyz{{{{z|||yyyz{zyy{||{zzz{zzyzy{{z{zzz{{{|{{zzzz{zz{{{{{|{{y{zzz{zz{{z{z|{zzzzzzz|{{zz{{|{{{yzzzzzz{{||z{{{{yzz{zzz{|{{z{z{zzzzyzzz{zz{|{zz{yzzz{y{zzz{z{zyzyyzzzyyzzzz{z{yzyyyzzz{y{zzzz{zzyyyzyzzzzz{zzzzyxyzyyzyzzzz{z{zyzyyyzyzz{z{z{zzyyyzyzyz{zyzz|y{zzyyyzyy{{zzzyyyyzyzzxyz{zzzz{zzyzzyyyzzzzzzzy{zyyzyzxzyzzz{z{z{zzxzyyyz{zzzzz{zzyzyyyzyzyyyz{{zyyyzzyzyyy{zzzzyzzz{zzxzz{zz{z{zyxzzzzzz{zz{z{zxyz{yyzyzzzzz{zzyzzzzyzzz{{{z{|{zzyyyz{z{|{z{{zzz{zzzzyzzz{zz{zzzzz{z{z{{{z{z{{{zz{zzzzzzyz{{z{{zzzzzzzz{{z{{{{zzyy{zyzz{{|zzz{zzyzzzyzz{z{{{{{z{zzzyz{z{zzzz{{{{zz{z{{z{{z{{|{{{zz{zzyzzz{|z{{{z{zyzzz{z{z{{{{|{{zz{{z{z{{{{{||{zzzz{{zz{y{{}{{|z{z{zy{{z{{zz{{zzzyyyzzzz{z{zyzyzzyzyyyyyzzy{{{zzzyzzyzy{z{y{zz{yzxzzyyzzzzz{{{{yzzzzyyyzz{zzz{zz{yyzzyzyzzz{{zyyyyyzzyyzyzyz{yzzyyzzzz{z{zzz{zyzyyyzzy{zy{z{z{xzxyyyyyzzzz{z{zzyyyyyyyz{z{zzzzzyyxxyyyzzz{zyzzyzxyyzyzy{yzz{z{zyyyyyyyz{zyzz{{zxyyzyyy{z{{{z{zzyzyyyy{zzyzzzy{zzzzyy{zzyzz{|{zzzzzyyyzz{zz{zz{zyzyyz{zz{yzz{{yzyyzzyzyz{z{z{|{zzyzzzyz{{{zzz{zzz{zyzzzzzzz{{{{zzyzzy{zz{zz|{{zzzzzzyy{{{{{z|z{{zzzzz{z{{zzz{{{{zzzzz|z{{z{|{{{{{{zzz{zz{{{{|||{zzzzzz{{{zz{|z{{zzzz{z{{zz|{z{{{{z{z{zz{{{{|{{|{zyzzz{z{{{|{z{zzzzz{yzy{{z{z{|{yy{y{yzy{yzzzzzxzz{yzyyxyzyzyz{z{{zywyyzzzzzz{z{yzxyyzyzzzzz{{{{yzzzyyyzzyzzzz{zzzyxxyzzyzz{z{|{yzzzyzzzyyzy{z{z{zzzyyxzzzzzy{yzyzyyzyyy{zyzz{{zxyyyyzzyyyzyzzzzyyzyxxyzyz{z{zzzzyzzyyyyyzzzz{zzyzyzzyyyyyzzzzz{zzyyxyzyyyzz{z{zyyyzzzyyyz{zzz{z{yxzzyyzzzzzzzy{yzyzyyy{zyzzzz{zzyyzzzyzzzzzzzz{zz{yyzzzyzzzz{{zyzyyzzzyz{{zz{{zzyzzzzyz{{{zzzzz{zz{zzzzzz{{{zz|zz{zzz{z{{zz{{|z{yzzyzyyz{zz{z{{zzzz{zzz{|{zz{{{{{zyzz{yz{z{{{{{zyzyz{z{z|{{||{{zzzz{zz{z{{{{||{{yzz|{zz{zz{z{zz{zzzzzyzz{z{z{z{zz{yzzzzz{zz{{|{{{zzzyzz|zz{{{z|zzzyzzzy{zy{z{zyyyzzxyzyyzz{yz{zzzzzzyyzzyz{zzzz{zzyyyyyz{zzzz{zzzxzzyyyyzz{zzyyz{yzyyyyyz{yzzz{yzzzxyyyy{zyzz{xzzzzyyyyzz{yz{{zxyzzyzzzyzyzyzz{xyyyyxyyzy{zyzz{zyyyyyyyyyzzzz{zyzyzzzyyzzy{zz|{zzzyyyyyzzyyz{zyxzzyyyxyyzzzy{y{yzzzyyzyzz{{{z{{zyzyzyzzzzzyzzyzzzzzzzzzzzzzz{{zyzyyyxyz{{zz{z{{zzzzzzzy{{|{z{zzzyzyzxyyyyzzyz{yz{yzzzyzz{z{z{z{zz{yzzy{zz{{{z{|zzzyzzzzzz{zz{{|zyzz{zzz{z|y{{{{{zzzzyzz{z{{|{{z{zzzz{{{z{z{{|{|{zyzz|{zzz{{{{||{zz{zzy{{z{{z{{{{y{zzzzz{zz{{|{|{{zzz{zz{z{{{|{{z{{zzz{z{{zzz{||z{zzyzzz{{zz{zzzzyzzyyzy{z{{zz{zyzzzyyyyyzzz{yzzzz{yyyyyzzzzyzzzzzzyzzyy{zz{z{z{{xzyzyyzyy|{yz{{yzzxyyzyzz{y{zz{yzyyzyzyzzzzy{zzzz{yzyzy{yzyzzzyyyyyzyyzyyzzyzzzyzyzyyzxyzzyzzzzyyyyyyyyyzzzz{{zzyyzzyyyyzzzy{zzyyyyyzzzyyzyyyzzzzyyzyzyzzzyzzz{zyyy{yzyzyzzzz{z{xyyzyzyyzzy{zz{zyzzzyyz{zzz{{z{zyyzzzyz{{zyzz{y{zzzzyzyyz{zz{y{zzzzyyzzyz{z{{{{{{zzzyyzzzzzz{y{zzzy{zzzzz{{{{|{zzyzz{zy{{zz{z{{{zyzzzzz{{z{{zzzzyzzzyyz{{{zz{{{zy{{{z{z{zzz{{|||z{zyzz{z|z{{z{{{yzzzzzzz{|{{|{z{z{zz{{z{{z{z{{|zz{{{yzzzz{{{|z{{{yzyzy{{z{z{{{{{{zyyzzzzz{{{zz{zyzyzzyzyz{zzzzyzzyzyyzyzzy{zz{zyyzyxxyz{zy{{zz{yzyzyzzyzzy{zzz{yyzzzyyyzzzz{zzzzyyzzyyy{zzz{zz{yzyyyyyyyzyyyyzzzyzyyzyzzzz{zzzzzyyzyyyyyyzzzzzzyzyxyyzyy{yzzzzzyyyyyyzzzyzyy{zzyyyyxzyzzzzzzzzzyyzyyyzzyzzyzyzzzzyyyyyyz{yzyzy{yyzyy{yyz{{zzzzz{yzzzyyyz{zz{z{yyyzzzyyyz{zzzzz|zzzyyyzyz{zzzz{{yyyz{yzyzzy{{z{{zyzzzzzzzzz{zz{zzzz{zz{y{zz{zz{z{zzzzzyy{{{{{|zzyz{yz{{zzzz{z{{{{zzzyzyzz{{{{|z{zyzz{z{z{{{{{{{|zzzzy{{{{zzz|{{{{yz{y{zzz|zz{|{{{zzzzzz{{{{zz{{{zzzz{z{{zz{{{zz{z|zz{yzz{{{|{{{{{{zz{{zzzz{{z{{{zzy{yzyyz{{{{{{zzyzzzyyyzz{{zzz{zyyxyzzyyzzzzyz{xzzyyzyyzzyzzzzzzzyyyyyxzzz{z{{zzzyyyyzzzzzzzzzzzzyyyzyy{z{yzzzzzxyzzzzyy{yz{yzzzyzzyzyzzz{zzyzyzyyyzzxxyz{{zzzzzzyyzzyzzzzzzz{zyyzyyxzyyzzz{zz{{yyyyzxyy{yzzzy{zyyxyyzzyzzyzzyzyzyyyyyzyzyzzzzzzyyzzzyz{zzyzz{{zyzyzzzzyzzzzzz{yzzyyz{yyzz{zzzzzzzyyyzzz{{{zz{{{zzzzyyzzz{{{{zzzzz{yzzyzzzz{zz{yzzzzzyy{{z{z{z{zzyzzzz{y{z|{{zzzzzyzz{zz{z{{|{{z{zzzzyz{{|z{{zzzyzzzzzy{|{{z{{|zzzzz{zzz{zzzz{{zzzyzzyzz|{{{{{{{zzzz{zy{{z{{{zz{yzzz{{zzz{z{|{z{z{zzz{{zz{zzzz|{z|zzzyyz{{{zz{{{z{zzzzzz{z{zz{z{yzyzyzyzzzz{{zzyyyyzzyxzz{z{zzzyyyyyyyzzz|yzzzzzzzyy{zy{zzzzz{zyzyyzyzy{zzzzzz{yzzxyxyzyyzzzzzzyyzyzyzxz{zyy{z{yzyyzyyzzzzyyzzyzyzzzyyyyzzzyzyyzyyxyzyzyzyyyzzy{zyyzyyyzyz{zzyzyyyyyyyy{zz{yyz{yyyyyyyxzyyyy{y{zzyyyxyyzzyzyzz{yyzzzzyyzzzyzzz{zzzyzxzyz{yzzz{{zzyzzyz{{zzz{{{zzyzyyyyyyz{zyzzzz{zzzxyzy|zzz{zzzzyyzzzyyz{zzz{zzzyzzz{z{z{zz{z{zzzzzzy{zy{{{{{{y{{y{yyy{z{zz{{zzyy{{zyyyzz{{{zz{zzy{z{{z{{z{{{{zz{{zzzzz{{||{|{{zzzzzzzy|{z{z{{zz{zzzz{z{{z{z{z{yz{{zyzzzzzz{z|z{zz{zzz{z{{{|||{zyyz{zzz{zzz{{{{zzzz{zzyz{{zz{zzyzyyzzyz{{zzzzzyyzzzxyzzzz{zzzzyyzyzzyyyzz{zzzzzyzzyzyyzxzzzz{{zzzzyzzyzzyzy{{{{zzxyyzy{zz{{zzzzyzzyyzzyzyzyz{{yzzyyyzyzz{zzz{zyyyyzyyy{z{z{zzyyzzzzyyyyzzzyzzzyyxyyzxzy{{zzzzzzyyyyzyyzzzz{zzzzyzyzxyzyzyyzzzyzy{yyzyyy{xzzzz{zxzy{zzzzzz{{z{zzzzy{yzzz{zzzz{{zzzzzyzz{yz{z{zzyzyzzzzzz{z{zzz{zyzzzzzzzz{{z{{{zyzy{yzzzy{y{z{zzy{zzzzz{zzz{z{z{zyzz{zzz{{{{{{{zyzzzyzz{{z{{{{{zzz{yzzz{{{z{{|{{z{{zzzy{z{z{{{|zzzzz{{zzz{z{{{z{z{zyzzy{|{z{z{{zzz{zy{{{z|z{||{{zy{{zz{{z{z{{{{{{{{zzzy{z{{|{{zz{zyz{yzz{{{{z{{z{yzzzzyz|z{{y{{{zzyzzyyzz{zzzzzzzzyzzyyzz{zzzzzyyzzzyyyzzzzzz{zyyzzzzzyzxzzzzzzzxyzyzyz{yz{yzz{zyzzyxyzyzyzzzzzyyzxyzyyyzyyyzyzzyzyzyyyzyzzyzzyzyxyyyyyzzzzzyzzzyxzxyzyyzzyzzzzzyyyyyxzzzzzzzzyyzyyyzyyy{zzyzzzzyyyzyyyzyzyzyzzyzyzyyyyyzyyyzzzyzyyyzyyyzzzzyzzzyyzyyzyzz{zz{z{zzyyyyyzzzzzzz{zz{yzzzzzzz{y{zz{yyzyyzzzyzz{z{zzzyzzyyyzzy{y{z|{zzzyzyzy{z{{{zzz{yzzzzzzzz|{{|{{zzyyzzzyz|zzz|{{zyzyzzyy{|{{|zz{zyzzzz{z{{z{|{z{z{{zy{{z{z{|z{{z{zzzzyz{{{{{{{{{z{z{yzzzz{{{z{{{{zzzzyzz{z{z|{{{{z{{z{z{{zz{{|{{zyzzzzz{{{z{z{|{y{z{yyzyz{{zz{zzz{zyyyzzzzz{zzzz{yxyzyyyyzyyzzz{y{yyyyyyyzzz{{{{{zyyyzyxzyyzzz{{zzyyzzyz{yz{zzzzy{zyyzyxzyyzz{zzyyyyyyzyzz{yyz{zzzzzzyyz{zzzyzyzzzyxyyyyyzyzzzyzyyyyzxyyzzzzyzzxyyzzzxyyyzzzz{{zzyyzxzyyzzzzzzz{zyzyyyyyyyzzyzz{yyzzyyzyzzyzzyzzzy{yyzyyzzzyz{zzzzzyzzzy{{zzyz{{zzyzyyzzzzyz{z{zzzzzyyyzzz{{z{{zzzzyzzyyzy{{{zzzzy{yzyzzz{{zz{{zyyzzzyzy{z{zzy{{zyyyyyzzzzz|zz{{zz{y{zzx{{z{z{{{{xzzzzzyzz{|{{{{{zz{zz{y{{|zz{{{yzz{{zz{z{z{z{{||zzz{zyz{|{}{{{{{zyz{yzz{{|{{{zzzzzzzzzz{{{{||{{z{zzzy{{{{{{{{z{{zz{yz{zz{z{{|zz{zzzzyzz{{{{{z{{zzzzzzzz{z{z{{zzyyzyyyyyyzzzzzz{yzzyzzyzzz{{{{{{zzzyyzzzzyzzzzzyzyzyxyzzzzzzzz{{zyyyyyyzz{|y{{zzzyzyyyyyz{zzzzzzzyzyzzxyzzzzzzzy{{zzyzyzyzzzzzz{yyyyzy{yy{yyy{zzyxzyyzxyzz{yz{yzzzzyyyzyyzz{zzzzyyzyyyyyyzzz{zzzzyxzyyyyyzyxzzzzyy{z{{yyyzyzyzzz{yyyzyyyzzz{yy{{{yzyyzzz{zzzzzz{zzzyzzzxyz{zyzz{zzzzzzyyzzz{{{{{yzzyzzzzz{{{z{{{zz{{zyxyz{{zz{z{zzzzzz{y{{{z{{{{zzzzzy{z{{z{{zz|{zzzzzzy{z{{zz{{zzz{{zzz{|{{zz{zzyzzzz{{yz{{{{{{z{zz{z{{z||z{{{{zz{|{zyz{{|{z{{{{yz{z{y{zz{|{{{|{{zz{{z{zz{{{{{{{zzzzyzzzyy{z{{{{{zzzzzy{|{|{z{{zzz{zzyy{{{z{zzzzzzyzyzyyzzyz{yzzyyzyzyzz{{yz{z{zzzyyyz{zzy{zz{{yyyyyzyyzz{zyzzzzyzxyzzyzzy{zzz{zyzyzzzyzzzyzzzyyyzyzzyyyz{zz{yyzyyzyzyyzyyzzzzzzyyzyyyzzzzzzzy{yyyyyzyyzz{{zzz{yyyyyyyyzyz{zzyzyyyyyyyyyzzzzzzyzyyyzxzzzyzzzzzyzzzyyyyyz{{zyzzzzyyz{yzyzzzyzzzzyyyyzyzy{y{{z{z{yzzyzzzzz{zzz{{{zyyzzyzzzz{zz{zzzyzyzyzzz{{zz{|zzyyzyzzzyz{yz{{zzzzyzzzzy{z{z{{zzzyzzzy{{{zzzzz|zzzzyyzz{{{{zz{|{yzz{{{{{y{zy{{{zyzyyz{{zyyz{{{|zyzzz{zzz{z{{{z{zy{{zyz{z{{{{z||{zyzzzz{zzyz{{{zzzzz{zz{{z{{|{{{{z{yzzzyz{zzzz{|{zyy{z{{z|{z{{zzzzzzyyzyzz{zzzzyyzyxyyzyzz{z|z{zzzyyxzzzzzzzy|{{z|yxyzzz{xzzyzzzzyzzyzyyzzz{z|zz{zyyyyxyzyzzzyzzyyyyyzzyy{yzyzyzzyyyyyxyzzzzzyzzxyzyyyzyzz{zy{zzyxyyzyyzyzzzzzzyzyyzyyyyyzzyyzzyyzyyyyzyyzzzzz{zyyzyyzzxyzzzzzzzzyyxyyyyyyyzyz{zzyzyyyzxzz{zzzzzzzyzzyyyzzzzzzyzxyzzzzzyzzyzzz{zzyzzy{zy{zzzz{zzyzzzzyyyyzzz{zzzyzzzzyyzy{{z{y{{zyzzyyzz{{zzyzz{zzyy{zyzzz{{z{zz{zzzzyz{zz{{zzz|zyz{zzyyz{{{{{{{z{yzyz{y{{{zy{{{{{{zz{zz{{{z{{{{{zz{zzz{{{{{zz|{zzzzy{{z{z{{{z{z|z{{zzzz{{{{{{{{zz{z{zzzz{z|{|{|z{yyzzzzy{z{{{{{{z{zzyzzz{zzzz{{zyzzyyzzzyzzz{yzyzzzyyyzzzzzzzzzzzzyyzyzzzz{z{{zyz{zyyzyzyz{{{{{zzyyzzzyzzzzzz{{yzzyxyyyzzyzz{z{yzzzyzxyz{yzzz{zz{yzyxyyzzzzzzzzzzzyyyyyzyzzy{zyyzxyzyyyyyyzyz{zyyyzyzyzzzzyzz{yzzyyxyyzzzz{zz{yzyyyyzyyyyzzyz{zyzyyzxzyz{zzy{zzzy{zyzzyyzz{zzzy{zzyzyzyzzzzzz{z{z{zzyzyz{z{zzz{zyzzyzzzzzz{{{{{zyzzzzzyz{{y{{z{zzyzzyyyz{{yzz{zzzzz{xyzz{zy{z{z{zzzzz|zz{{{{z|{y{{zy{zzz{{{{{{|{{yzzyzzz|z{zz{{z{{y{yzyz{{z{z{{{yzzyzz{{{z{z{{{|zzzzzz{{|{{{z|{{{{z{zzz{{{{zz{zzyyz{z{z{{{{|{{z|zz{{{{z{{{{|z{{z{zyzzz{z{{z{{{{{zz{zy{z{zz{zz{{zzy{xyzyzz{yzz{{zyzyxyyyz{zzzz{zzzzzyyyzzzz{{zz{zzyyxyyyyyz{zz{zzzzzzzzzzy{{zz{zzzyy{xyyzyzzzzyzyzzyyyyxyz{yzz{z{yyzyyxyy{z{z{{zyyzzyyyzy{zzyy{zyyyzzyyzzzyyzz{yzyyzyzzzzzzyzzz{zyzzyyyzzzz|zzzz{yyzyyyyzz{yzzzzzyz{zyyxyzzyzzzzzyyzzzzxz{y{{z{{zzyzzyyzzz{zyzz{zzzzzyzz{{zzzz{zzzyyzyyyyz{{z{{zyyzzzzyyz{zz{zzz{y{yzyzyzz{zzzzzz{zzz{zzz{zz{z{{zzzzzyzzz|z{{z{{zyzyzz{zz{z|z{{{{{zzyyzz{|z||z{z{z{{{zz{{{{{{{{{zyz{yz{zz{{{|{{{{z{z{{zzz|z{z{|{{zz{y{zz{{|{{|{{zzzzzz{{{{{{{{{||zzzzzz{{z{z{|z|zz{yz{z{z{{z{{{|{zz{zyyzz{zz{zzzzz{yyzyyz{zyzzyzyyzyzzyyyz{zzzzyyyyyyyyzzzyz{zzzzyzyzyzyzyz{zzzzzxyyyyyyxzyzyzz{zyzyxyyxyz{zyyy{yyyyyyzyyzzzzy|yzyyxyyyyzz{zxzzzyyyyxyyyyxyyzzyyyyyyyyxyyzyzzzzzyyyyxyyyyyyyzzzzyzyyxyyyzzz{zy{yyyxyzyyyyzyyyzzyyyyxxyzyz{zzxzzzyyzzyyyzzzzzzz{zyzyyzyyyyzyyzy{yzyzyyyzyzyzzyz{{yzzyyyyyzzzzyzz{zzyzzyzzyyyz{{zzyzyyzzzz{{zzzz{yzzxyyzyzzz{zzz{{zzzyyzzzzzyzzz|{yzyzy{zzzzz{zz{{zzzyzzzyzzzy{z{zzyz{yzz{z{z{{y|{zzz{zz{{{z{zzz|z{zyzzzzzz{z{z{{|{zzzyyzz|z{z|{|{zzz{zy{yz{{{z{{z{zzzzzzzzz{{zz||{z{yzzyz{{{{{{{zyz{zzyzzzz{{zz{zzzyzyzzzz{z{z{yzyyyyzxyyzzzzyzzzzyyyyyzzyzzzz{z{zyyyxyyyzz{y{zz{z{yzyyyzzyzzyz{zzzyyzyzyzyzzzzz{zyyyzzzxzzzyyz{yzzzyyzyyyy{xyzzyzyyyxyzy{yzzzzyzyyyzyzyxyzy{zy{yyyyyyxyzzyzy{zzzyxzyyyyyzzzyzzzzyyyzyxzyy{yzyzyzzzzyzzyyyyzzz{y{zyyyyyyyzyzzzyzzzzzyzzzxyzzzzzz{zy{yzxyyzy{zz{z{zzyyyyzxzzzz{{zzz{zzzyzyz{{{z{{zzzzzzyyyzzzzz{|zzzzyyyyzz{{z{z|z{zyzzz{zyzzzz{{zzzzyz{zzzzz{{zz{z{{{zyzz{{zzz{{{zzzyz{zzzz{y{{{zzz{yzz{{{{zzz|{{{z{zz{zz{{{zzz|{{{zzzzyzzz{z{{z{zyz{zzzz{{z{{{z{{zzzzzzy{{{zz|||zzzzzzzzzzz{{|{{zzzz{zzzy{z|zzzzzzzz{yzyyz{zzzzzyzzxzyzyzzzzyzzzyzxxyxyzyzzzzzz{zzyyyyyyzyzzz{yzzzzzzzzyyzzyzz{z{zzyzyyyzzzzz{z{yyzyzzzxyzzzzz{zzyyzzyzyzzzzy{zzzyzxzzyyzyzzyzz{yzzzyzyyzzz{yy{yzyyyzyxyyyzyzzyzzxxyyyxyzzzzyzzzyyzyyyyyzz{z{{zzzzyyyyyxzzyyy{zzyzzyyzyyzzyzyz{z{zyzzyyzz{yzzzz{zzzzyyyyzyzzz{z{yzyyxzyzzzzz{zzzyzzzzzzzz{{zzz{zzyyyyzzz{{{zz{zzzzzyzyzyz{{yz{z{zzzzzyzzzz{{{{z{yzzzzyzy{{{z{{z{{z{zz{yy{zzz{{zz{z{zzyzz{{{{{{|{{zzzzzz{z{z|{{{|{zyzzzzzy|z{{z{|{{{{zzz{{zz{y{{{{yzz{zzzz{zy{|{{{{y{{zzzz{{{z{z{{{yyzzzy{z{zz{{{z{zyzzzz{{{zz{zzzz{zzzyzzz|zz{yzzyzzyyzyyzzzzzz{zyyzyzyzz{{zzzzzyzyyzyyy{yzyz{zzzzzzyyzxzzy{zzz{{yzzxyyyzyzzzzzzyyyyyzzzyzyy{z{yzzzyzyyyyyzyzzz{zyzyyyyyzyy{y{zzzxxzzyyyyzyxy{zyzyyyyyyyyzyy{z{zzxyyyyyyzzz{zyz{yyyyzyxyzzyzzzzyyzyzzyyyyzyyz{zzyyzyzzyyzzz{{{zzzyzyyyz{z{z{zzz{zyzzzyzyzzzzz|z{zzzyzyzzzzzzyzzzzyzzzyzyzzzzzzzzzz{zyyyzz{{z{zzzz{z{zyyzz{{yzz{zzzzzzzzzzzz{y{{zzyzyzzzzzzyzz{{|zy{zzzzz{{{z{zzz{zyzzzzz{|z{{z|{zzzy{zzzz{zz|z|z{zzyz{{zz|{|z{|{{z{{zzzyzz{{{{z{{yz{{{z{zz{zz{{|{yzzzzyz{{{z{|{{{{zzzzzyz{{z|{{{zzzzy{zzz{{zzz{{zzzyyzyyyz{zy{yxxyyyyzyyzz|zzzzzyyyywyyzz{{yyzz{{yzxyyyyzyz{z{zzyzyyyyzx{y{zzyzzzyyyyyzxyzzzzzyzyzzyyzyxzzyzyyzzzyzyzyyzyz{z{zzyyyyyyyyzzyzzyzzzzyzyyxyyyzzy{z|{zyyyyxxyzzyz{yyzyyyzyyyzy{zzzzzzyyzzxyyyyzzz{zzyzxyyzxyxyzyzyz{zyyyyzzyxzyzzzz{{yzzyzyyyzzyyzzzzzyz{yyzzzyzzyz{zyyzzyyzxzzzzz{zzyzy{zyyzzz{z{zzzzyyyyyyyz{zz{z{z{zzyzzzzzz{yy{{zzzzyzzyz{z{{|{zzyzyzzy{{{{{{z{{zzzxzzzzy{{z{z{|{{zz{zyz{z{{{{||zyzzz{zzzz{{{{{{|{zyzz{zyz|{{z|{{{zzzzyzz{{zzz{{zzyy{zzyzz{{y{{{{{zz{{zyz{{{{|z{{zzyz{zzz{{zzzz|{{zzzzyzz{{|zz{{zyzzyyzyzz{{zzzzyzyyyxxyzzzzzz{zzzzzzyzyyzz{zz{{{yzxzyyzyzz{z{z{y{yzzzxzyz{zzyz{zyyyyyyzyyzzz{{z{yzyyyzyyyzzyy{zzzzyyyyyyz{zzz{zzyzyyyxzzyzzzzzzzzyyxyzyxzzzzzz{zyyyyyyyyzzzzzyzzyzyyzzyyzyzzzz{zzyzxyyzyyzyyzyzzz{zzzyyzyzzzz{zzzyyzyzzyzz{zzzzyyzzzzzzyzzzz{{z{zyzzzyzy{zy{yz{zzyzyyyzzz{zy{{{zzyzzzyzyzz{zz{z{yzyzyyzyz{z{{z{|zzzzzzzyzz{z{z{yzzzz{zyzzzz{{|{{zzzy{{zz{zz{{{{|zzzyzzyy{|z{zz{{{yzzzzyz{z{z{{{{{z{zz{z{z|{||{{|{zzzz{{{z|{z{{{|{zz{z{zz{{{{{{{{{yyz{yyzzzz{z{{{{zz{zzyz{yz|}z||yzzyzyz{z{zz{{zz{zxzzz{yzzz{{{zzzz{yzzzyz{{{{{zzzzxyzyzxyzzzzy{yzzzzyyzzzzzzyyz{zzyyzzzzzzzzz{zzzyzyzyyzz{zzz{{{zzyyyzyyzyyzy{z{yyzzyzyyzzyzzzzzyyyxyyyyzz{yy{zyzyyyzzyzzyzzyzyzyxzxyxyxzzy{zzzzyyzyyyyyzyzyzz{zyy{xyyyyz{{{zzzzzyyyyyyxxzzyz{zzyyyyzyyxzzyzzz{{yyzzyyzy{zyzyz{{z{yy{yyzzzzzzz|{zzzzyyzy{zzz{z{zzyyzyyzyz{z{yy{zzzzz{yzyz{z{{{zyzz{zz{zzz{{z{{{{zyzzzyyzz{{yz{{|zzzyzyz{{{{z{z{zzzzzzy{{{{{{{z{{{y{zzzyz{{{{z{{z{zzz{z{z{{{zz||z{z{zzz{z{zz{z{{z{zzzz{z{{{{z{z|{{yzyz{zzz{z{{|{{{zzyzzyz{z|z{{||{zz{|{z{{{{|zz{|zzzyzzzzz{zz{{{{{zzzzzyzzzzzz{|zzzzzyyzzz{zz{{zzzyxzyyyyyzz{zzz{zzyzzxyyyzy{{zz{zyyyyzyyzz{zzzzyzyyzyyzzyyzzzzzzzyzyyzyxzzz{x{zzyzzyyzyxyz{zz{zzzzzyxyyyzyzyzzyyzzyxyzzzyyy{zzy{yyzyzyyyyz{zzz{zyyyyyyzyzzzyyzzzyz{zxyyyzzzz{zzzzyyzyzyyxzzyyzyyzzyyyyzzy{yyyz{zzyyyzyyyzz{zzz{zyyyzyzzxyzzzzzyzyzyzyyzyzzyzz{{{zyz{yzyzyzzzzzz{zyzyxzzyy{zzzzzzz{zzzyyzzz{yz{yzzyzzzyzzzzyzy{{{z{zzzzyzzzzzz{z{zzyzyyzz{z{{z{{{yzyy{zzzzzz{{z{{{z{zzzzz{{{{z{{{{{{zy{zz{{z{{{z{{zzzyz{yy{{{z{{{{{{yzzzz{zyzz{zzzzz{{yzzz{z{{z|z{{zz{zzzz{{z|z{{{zzz{zzzzz{{zz{{z{yyzyz{y{zz{z{zzzzyyyzzyz{zzyzzzyyyyyzxy{zyzzzzyyzxyyyy{zyz{zy{zyyyzzzyzzzzzzzzyz{zyyyxyy|{zzzzzyyxyyyyzzzzyzzzzyyzyyzyzzzzy|{zzzyyyyzyzz{zz{zzyyzzyyzyyyzyz{yzxyyxyzyyy{yy{zzzyyyxyyyyzzzzzyzyyyzyxyyyzzzzyzz{yyyzyyyyzzzyxzzyzzyyzzyyyyzzyzzzyyyyyzzyzzzzzzzzzyzzyxzyyzyyz{zzyyzyzyzzzzzzzz{{yyyyyyyyzz{{yyz{zzzyyyzyzzz{{z{zzyzyzyzyzy{zzz{{zzzzzyzyzzzzz{z{zzzzzzzzzzz{z|zzzz{y{zzz{zz|yzz{zzzzzzzyz|{{{{{zzyzz{{yzz{z{{{{{{z{z{z{z{{z{zz{z{zzzzyzzz|{{z{{z{{zzzzzz{{{{zzz{{zz{{y{{{{zz{{{{|zzzzzz{z{{{{{z{y{zyzyyyzzz{{z{|{zz{zyzyz{{{{zzz{zzzzzzyzz{{zzyyzyyzzyyyzzzzzzyzzyzzyyzyyyzz{zz{zyzyyzzzyyzy{{yyyxxxzzzyzz{zz{zz{zzzzyzxz{zzyzz{yyzyyzyyzyzz{z{yzyyyzzxyzyzzy{zyzyxyyyyyyyzyzz{{yzyyzyyxyzzzzzzxyyyyyyyyyy{y{{yzyxyyxyyyxyzz{zzzyyyyyyyyyzyyzy{zyyyy{yyyzzzzzzzzyx{yzzyyyzzzzz{zzzzzzxzz{z{zzzz{{yyzzyz{zzzz{zzzyzzyzxzx{zz{{{{zyzyxyxyzzz{{z{zzzzzzzyyzzzzy{{zzzyzzyzyz{zzzyz{zzzzzzyyz{zz{{{{zzzzzyzzz{z{{zz{{zyyzzyzzzz{{{{z{{yzzyyzy{{{z{z{z{{zyx{z{z{zz{{{|{zzzzz{{zz|{zz{zzz{zyzyzz{zzy{{zzzz{zzz{{{{{{{|{z{yzzz{z{{|z{{{{yzyyzzzz{{{{{{z|{{{{zz{yz{{{zzz{zyzyzzyy{zzzzyyzzzyyyyyyy{zzzzz{yyyyzyyyyzz{{{{zzzyxyyzxzzyzzy{{yyyzzyyyzzzzyzzzzyyyyyzyzzxzz{z{zyyyzzzxzzzzyyzyzyzyzywxyyzyzzzzyxyyzyxyzyzyyzzzyxyyyyyzzyzyzzzzzyyzxyyzzz{zzz{zyyzyyyyzzzzzyz{zyyyyyxyyyzzzz{{zzzzyyxzyyyzzy{yzyyzyzyzzzy{yyzzzzzzzzyyyy{{yzz{{yzyyxyyyzzzzzzzzyyyzxyzzyzzz{zzzzyz{zzzzyzzz{zzzzzzyzyyy{z{zz{zzz{zzzyz{yz{zy{{{z{{yzzyzzzz{{|y{zz{yzzzz{{zz{{zzzy{zzzzz{{{z{{{z{zzzzzzzz{zz{{{z{zzyz{z{zzzz{|{{z{yzz{zyzz{{{|{z{{z{zyyyz{{{{zzz{zzz{{z{zz{z{z{{{zzy{yzy{{zzz{{|z{zyzz{{zzz{|{zz{z{yyzzyz{z{zz{zzz{yyzyyz{z{zzzyzyyyzyxyyy{y{zzzzyxyyyyzzz{{{zz{yzyyyzzyyyzyzzy|zyzyzzyxzz{{zy{{yyzxyyyyzzzzz{{{zzyyyzyxxzyyyzzyzyzzyyyyyy{yxzzzzyyyyyyxzzyzzzzzzyyyzxyzzzyyyz{yzxxxyzyyyzzzzz{zxyyyyyyzy{zzzyzyzyyyyyyxyyzzyzz{yyyyxyzzzzyyzzzzzyzyyzyzyzzy{zy{yzyyzyyzzzzyzzzzzzzyyzzzyzz{z{z{yy{zxyzyzzzzzz{z{yzyyyzzz{{zyzzzyzzyzyyzzz{{zz{yzzyzzyyyyzzyyzzyzzzzzzzyz{zz{{zzzzyyzzx{z{y{{z|zyzzzyzyzz{{{{{{{{yzzzyzyzz{zz{{{zz|zzzz{z{z{{|{z{zzzzzz{z{{{{z||{zz{yzzzz{z{z{{{|yz{zzz{z{z{|{{|z{z{{zyz{{z{{z{{zzzyz{z{zzzzz{{{{zy{zzzyz{{{{z{zzzzzyzzyzzz{z|zyzyyyzzyxyzzz{zz{zyyyyyyyyzzzzzyzzyzyyzzyyzz{zzzzzyyzzxzzy{{zzzz{zyyyyyyy{zzzzzz{zyyyyzyyzzyzy{zzzzzyzzyyyy{yyzyzyyzzyzyzzzyzzzz{yxyxzyzyyzy{z{zxyyzxyyyyy{{zz{zy{zyzxyyzzyzz{zzyyyzyyxyyx{yy{zzzzzyzyyxyy{zyzyyzyzyzzzzyzzyy{zzzzyzzyyyzy{zzyzz{zyyyyyzyzz{{zyz{zzzzyzy{zz{{zzzzzzyzzyzzyz{{{z{zzzzyzzyzzz{z{{{zzz{zzzzzz{zz{{|zzzzzyzzzz{{{{{{{zzyzzz{{zz{z{{z{yzzz{yyyz{{zzz{z{zyzzz{z{{{{{{{{{z{zz{{z|zz{{{zzzzzz{zyzz{{{{z{{zy{z{zy{||zz{|{zzzzzzyz{z{{|zz{|{zzzzyzy{{{zz{{{zz{zzz{zyzz{{z{{{yzzzzyz{|{{zz{zyzzzzzzyzzzz{zzzyzyxyyyzy{{{{yzzyyzyyzyyzzzzzzz{zzyyzyzyzzyzzzzyyxyyzyyzzyzzyyzzyyzyyxyyzzyyy{y{yz{yyzzyyzyyzz{yyyzxyzyyyyzzyzzyzzzzyyxzzyzz{zzzxyyyyyzyxz{zyzzyzyyyyyyzyzzz{y{zzzyyyyyyyyyzzzzzzyyzyyzxzzyzzzzzzyxzyzzzyyzzy{{{zzyyyzyzzy{zzzzzyyyyzyyyyzzzzz{{zzzyyyzzzyz{{|{zzzzzyyzzzz{zyzz{zzyzzzyyy{zzzzzz{zzzyyzyzzz{{{{zzyyzzyyzz{zyyzzzzyyzzzz{{z{{{{{zzyyzyzz{{zz{zz{{zzzzzzzyz{{zzzz{zyzzzzzyz{{|{{{{yzzzzzzzz{z{|{z{|{zyyzzzz{{z{{{{|zz{{yyz{{z{z{{{zy{zzzz{{{{z{{{|{zz{{{zzzzz{{z{|{{{yzzzzy{z{z{{z{yxzyyzzzzzzzzzzzzyzzyyzzz{y{zzzyyxxyy{yxzyzyz{zyyyzyyyyzzy{zzzzyzyxxzzyyyzzzz{zxyyyyxyyzzz{yzzzzyzyxzzyyyyzyyyzyxxyyyyxx{zyzxzzyzzyyyyyzy{zyzzxyxyxyyyzzyyzyyyzyyxxxxzzyzyxzzzzxyyxxzxzyzzzzyzyzyyzxyxyyzzyyz{zyxyyyxxyyyzzyzyzyyxyxyxxyzyyyyzyyxyyzzxy{yyzzzzyyyyyyyyyzzzzyzyzxzyyyxzyzzzzy{{zzyzyyyyzy{zzzz{zyyyzzyyyyyzy{{zyyzzyyyyyzzyz{z{{zyyzzzyzy{yyzz{zzzyzyzzzzy{{{z{zzyyyzyzyz{{{{{{{zzy{yzy{y{zzyz{{zyyyzzyy{{zz{{{{zzzzz{zzzzz{{zz{yzyzyzzzz{z{z{{{zyy{yyzyzz{{yz{{zyzzyyyzz{{zz{z{zzz{zzy{z|zz{z{zyzzzzyzyzz{z{z{zzzy{zxyzyyy{{yzzz{zzyxyyzyyzy{z{yzyyyyzyyzzzzzz{yzyzyyyyyzzzzzzzzyxyyyzyzzyzzyzyzyyxyyxyyzzzzzz|zzxzyyyyyzzzyzz{yyyyyzyyy{yyzzyzyyzyzzyzyyzzzyz{yyyyyyyyzyyy{zyzyyyyyyzyzzyzyzyyzyyyyzyyyyyzzzzyyyyyxyyzzzzz{zzzzyyyyyyyyzxzz{yzyyyyyzyxyzyzzzz{yzyyyyyxyyzzyzz{zyzyyzyyz{z{yyz|zyyzyyzzzzy{zzz{zzyzyy{yzzzzzzz{zzzyzyzyz{{zz|y{yyzyyyyzz{y{zz{zyyyzyyzxzzzzz{{yzz{z{yyzzz{{{{{zzzyzzzyyzzyzz{{z{zzzyzyz{{{z{z{z{zzzzzzzz{zz{{z{yz{z{{{z{zzz{{{{z{zzzz{z{{{zzz{{|yzzzz{zz{{{{{z{zzzz{{{zzzzz{{{{zzzz{{z{{{{zz{|zzzzyzzzz{zzzzz|zzzzzzzyzz{{{zz{zyyyxzzzy{zzzyyyz{yyyyyyyyzzyz{{zyyzzzyyyzyzzzz{{zzyzzxyyzzzz{yz{zyzzzzzzzzzzyy{zyyyyy{yyzzz{zyy{zyyyxyyzyyyyz{zzzzyyzyyzzzzzz{z{zzzyyzyyzzz{zzz{yyyzyyyyzzzy{{zyzxzzyyyyyyz{zz{zzzyyzzyyzzzzzz{y{{zxyyxzyzyzzzzzzyxxyzyyyzzy{{zzyzzzzzyz{zz{zz{{yxzz{yzz{{{zzzzzzzzzyyzyzzyyy{zzy{zyz{zyz{zy{{z{{yzzzxzzyzz{{zz{zzzyzyzzzz{{{{{zzyy{yyzyzz{{{{z{{yzzzyzzz{zz{|{zzz{{y{{z{{z{{{{|zzz{z{zyz{{|z{z{{zzz{zyyz|{{z{{|{z{{z{{{z{zz{{{{{zy{zzzzz|{{z|{{{z{{zzzz{{{z{|||{yzzz{{zz{{{{{|{{zzz{zz{{{{|{{|{zz{zzzzzz{z{{z{{{zzz{z{zz{z{zz{zzzzx{yzzzzy{zyzyyzyxzzyyzzzzzy{{yyxzyyzzzzzzzzzzzyyxyzyzzzzzz{|zyzxyzyyyzzzzzz{zzyzyxzyyzzzzzzzzzyxyzyyyzzyxzzz{yyyyyyyxzyzzz{zzyzzzyzyzzzyzz{yzyzyzyyyyz{z{zyyyyzxzyxyyzzyzzyzyzzyxzyxzzzzzyzz{yzxyyyyzyzzyz{yzzyxyyyzyzzyzz{zzxyyyz{yzzzzzz{{yzzyx{yzzzzzzzzz{zyyzzyzzzyzzzz{zzzzyyyzzzz{zz{{zyyzzzyzzyzzzz{{zxzyyyyzzzz{{zzzz{zy{z{yyzzzzzzzzzzzyyzzzzz{{z{{{yzzzzzz{z{{{z{{z{zzzzyzyz{{z{z{zzzzyzzyy{{z{{{{{zzzzz{{yzzzz{{{z{zzzzzz{z{{{zz|z{z{{zzzyz{z{{z{zyzzzyyz{{{{z{{{|zyzzzzyzz{z{{z{{{{zy{z{yz{{|zzzz|{yzzyzy{{{{z{{y{{zzzyzy{zzzzzyzzzzyyyyzzzz{zyz{zyyyyzzyzzzzzz{z{zyzyyzz{yyzz{z{zyzyzyzzzzzzzz{zyzz{yzzyzzzyzzzzyyzyyzyyzzzyzz{zzyzyyzyyzzzyzzzzzyzyyyxzzzz{{zyzyxyz{yyyyzyyzzzzyyyyyzzzyy{yzzzzyyyzxyzyyzz{z{zzzxzyyyyyyyzyy{zzyyxyzyyyy{z{yzzzzzy{zyzyzyzz{zz{zyzyzyyzzzzz{{zzzzyzzyyzzzzyz{zzzzyyxyzyz{{zzz{zzzzzzzzy{{{zzz{zzzzyzyzyzzzzzz{zzzzzzzzx{zzzyzzzzyzzzyzzz{z{z{{{zzyz{zzzz{{|zz{{zzyz{yzzz{{z{z{zzyzz{z{{{||{z|z{zz{zzz{z{{z|{|{|{yzz{zzzz|{{zz{{zzzzzz{z{{{|{{{{{yyzzzz{{{{{z|{{{zz|zzz{{{{{{{{{{yzzz{zzz{{zz{{{{{zyzzzyz{{{zz{{yzzyzzyz{zz{yzz{yyyyyyyyyz{z{zzzzyyzyyyzyzz{{{{zzyyyzzyyzzzzyzz{zzxyzzyy{zz{zyz{zy{yyxzyzzzzzzz{yyyzzyyyzzzzzzzzyzzyyy{zzzzzyzz{yzyyyzxyyyyzzyyzxyyyzyyyyy{yyzzzzyyzyzyzy{{yzzzzzyzyyyxxzzzyyyzzyyyzyxzzyyzzzz{zyyyxyyyyxzzzzz{zzyzzyyzyzzzzzz{{zyyyzxyzzzzzy{zzzyzzxyzzyzyzz{{{zzzyyyyzyz{yz{{z{zzxzzyy{{zzz{yzyzzyzzyz{{{{{{{zzzzzyyy{zzzzyzzz{zzzzzzzz{{z{{{zyzyz{{zz{z{{{zzzzzyzzzyyzzzz{{z{{y{zz{{zz{zz{|{{z{{yzz{zzz{z{{zz{z{yzzz{{|{|{{|zzzzzzy{z||{z{z{zzzzz{yzzzz{zz|{{{zz{zzz{z{{{z{|{{|zzzzz{z{z{{{{{z{z{zzyyz{zz{z{{zzzyzyxy{{zz{{z{yyyyyyyyz{zyyzzyzxzxyzzyzzzyy{{{yyzyyzzzzzzzzz{{zyzyyzyyzzzzyyz{yzzyyyzyzyy{zzzzyyyyyzyyzzzzzzzzzyyyyyxyyyzzyzyyyyxyyzxyzzz{zyyzyyyyzxyzzyzyzzzz{yyyxxxzyyzzzzyyyzzxyyzyyzzzyyzyzyxyyyyyyzyyyzyzzyzxxxyyyzyyzzzzzyzzyyyxzyzzyy{zyyzxzxzzyzzzzzz{zzzzyzy{zzzz{zzzzyyyzzxzzzzzzzzzyzyyzyyzy{yzz{zzy{zyyzyzy{{zz|{yzzyyyzyy{zzzzzzzzzzzzzyzz{zz{{{{zyzzzzzxz{{{zz{{{zzzyyy{{zz{{z{{zyyzzyyyz{z{z{{{z{zzzz{yz{{{z{{z{yz{zyxyz{z{|{z{z{zzyy{yz{{z{|{z{zzzz{zy{{z|zz{{{zzz{{{z{{{{{z{{zz{y{zzzz{zzyz{|{{zzzzzzz{zzzz{{zzzzyy{y{zzzzzzzyyzzyzyyzzzyzz{zzyxzyyyzzzzy{zzzzyyyyzzzzyzyz{|zyyzyyyyyzzy{yzzzzzzyxyyxzzzzzzzzyyyyyyyxy{yyzzzzyyzzyyyzyyy{zyzzzzyyxyyyzyyzyyzzyzyyyyyyyyyzzzzyyyzyxzyzzzzzzzzyzzyyxxzzy{zz{yzzyyzyyyyyyzzzzyzyzyzy{xzxyyzy{zzzyyzzzyyyzyzyz{{zyyyzzyyzyzyyyzzzyyxzyyzyzyzzz{{zzyzzyzyz{zz{zzzzzyzyyyzzz{zzz{zzy{zyzzyyzz{{yy{{zyyzyyzzzyzyzzz{zyzz{yyyzzzz{{{zyzyyzzzyzzz{z{zzzyzzyzy{z{|{{z|{zzyyzzzzz{zz{z{zyzz{zzzz{{{{{z{{zzyzz{zyz{zzz{z{zy{zzzzzz{yy{|zz{y{z{yzy{z{{{{{{zzyxz{{{z{z{zz{{zzzzzyzzzzz|z{z{zzxyzzzyzzzz{{z{zzzyzzyzzzzz{zz{yzxxzxzyzy{yzyzzzzyyyxxyzzzzyz{z{zyyzyzzzyzzzzz{zyzzzyyyz{zyzz{zzzyyxyzyzyzzzzz{zzzyzyzyzzzzzzz{yyzzzyzz{zzyz{{zyzyyxzyzzzyzzyyzzyzyyxzzzz{zzz{zzyyyyyzyzz{zz{z{zzyyyyyyzz{zzzzzzyzyzzxyzzzyzz{yyzyyzyyzy{zx{z{yzzzyzxzyzzzzz{{{zzzy{yzyy{z{z{z{xzzzyy{z{zz{zz{{yzyzzzyyz{zzz{{|zzzzzzzy{{z{{{{{{yzzzzzzz{{z{z{zzyzzyyzz{zzzzzzy{z{zyz{zzz{{{{{{z{zz{yzz{{z|z{{zzzzzyyyzzz{zz{{{{y{|{{zy{{z{{z{|zz{z{{{zz{{{{{{|{{{yzzyzy{{{{{z{zyz{zzz{{{{{z{z{{yz{{zyzzzz{{{z{zz{zzzz{{{|||{{{{z{zzzzzzzz{zzzz{{y{zz{zz{{z{z{{zz{zzyzzzz{{{zzzyyzxyyyxzz{y{zyzyzyyyyzyyzzzz{z{zzzyy{yyz{{y{{{zyzzzzyyzyzzzyzzzyzzyyyzxzzzzzzzyyyxzyyyy{zzzyzyzzzyyyyyyzzzzxz{zzyyyyyyxyyzyyzyyxyyyyxzyyyz{yzzzyzyyxyyyyzzzzzzzyz{zyyyyyzyyyzzzzyyzzzyyyyzyzzzzzzyyyyyyy{zz{zyzyyyyyyyxzzzz{z{yzzzyzzzyzz{zz{{{yyyyzzzy{zyzyz{zyyzzzyzyzzzyy{z{z{z{yyyyyz{z{z{{zy{yyyzz{{zzz{{{{yyzyzyzzzzyz{zzzyzzzzzzzzz|{{{zzzzyzzzzz{z|z{{|zy{zyyzyz{zzz{{{zyzzzzyzzz{{|z{{zz{zyzzyz{z{z{z{{yzzzyzyz}{zz{{zz{zzzzzzz{|{{{{{z{zz{zzz{{{|z{||{zzzzyz{{{z{z{z|zzzyzzz{{zzz{{{{{zyzzzzyzzz{{{zzzzzyzyyyyy{{zzzzzyyyxyzzzzzzzzz{zzyyxyzyzzzzyzzzyyyyyyyyzz{zzzzyzyz{yyyyzzzzyzzzzzyxxyzyzzzzz{{zzxzxxyyyyzyyzz{zyzzzzyxyyzzzyyzzzyyyxzyyzxzzzzzzyyyyyxyzyzy{zzzzzyxyyyyyz{{yz{zzzzzyyzyyyz{{zzzzzyyyzyyyyyyxy{yzxyyxzyyzyyzzyzzzzxzzyzyyz{zy{yzzzzyyzzzyzzyzzy{yzyyyzyzyzzzzzzzzyzyzzyyyzzzyz{zzyzzzyyzzz{yz{{{zzzyxyyzzzz{zzzzz{zyzyzyyzzzzzyzz{zzyzzzzzz{z{{{zzy{y{yz{{{z{zz{{zzzzzyyyz{{{z|zzzz{yzyyz{zzy{z{z|{zz{zzzzzz{z{zz{zzyzzzy{|{{{{{{{zz{zzzz{{z{{{{{{yzzz{zy{zzz{{{{{zzz{zzz{z{zz{z{yzzyzzzz{{z{z{|zzzzzz{zyzzz{{z{{zyzy{zxzzzyxzyzzzxzyyyzxz{zyzz{zzzzyyxyyzyzzzz{{yyzyzxyyyz{yzz{zzyzzzyyyzzzyzyzzzzyzxyyxzzzzzyzzxzyyzyyzzz{zzz{zzzyyyyyy{zzzyyzzyzyyyyyzzzzyzzzzyyyyyyyzz{z{yzzzzzyzxyzyzz{zzzzzzzyyxzyzzzzzzyzzzyzzzyzyxyzzzzzzzyyzyyyyxzyzzzzzyxzyzyyyyzyyzz{{zyyyzyzyyzz{{{z{yzxyyxyzyzz{yzz{zyy{zyyzzz{{{z{{zzzzzyyyzz{{y|zzyz{zyyyy{zzz{y{y{yz{yyyzzy{zy{zzzyzyzzyzzz{{{{{{yyyzzzzz{yz{zz{{zyyzzyyyz{z{{zzzzzzzzzzy{{{{{{{|zy{yzz{{z{z{|{z{{{zzz{zz{{z{{|{z{zzzzzzzz{{zz{{z|zzzzzzy{{{{{{{{z{zz{zyyzzz{z|{{zzzyzzyzz{{{z{{{zzzyzzzzyzz{{zzzzzzyyzzzz{z{{zy{zzzyxxyzzz{zzzzzy{yyyyyyyzzyy{{zzyyyyzyz{z{z{zzyzyyzyyyzyzzyzzz{zz{xyzzxzzzzy{zzyyzyyxyyyyzyyzyyyyzzyyyyyzzyzzyzyyzxyyyyyzzzzzyzyyxxzyzzzzzyzzzzyzyzyzyzzyzzzzzyyyzzxyyyyyzzyz{z{zzyyyyxxyyzz{zyzyyyyyzyyyyyzzzzyyzzyzxyy{zzzzz{{yzyyyxyyz{yz{z{zzyzzyyzzzzzy{zzzyyzzzzy{zz{zz{zzzzzzyyzzz{z{z|{zyyzyyyyyzzzzzzz{yzyyyyzy{zz{{yzzzyzz{yzz{z{z{z{yyzzy{zzzzz{{|{{zzyzzyzyzzzz{zzzyzzz{zzz{{{z|{{{yzzzzzzyzz{z{|{z{zzyzzzzy{{z{z|{{z{zz{zz{{z{{{{{zyzyzzzzzz{{{z{|z{zz{y{{{{zzz{z{z{{zyz{z{zzzy{{zzzzyzzzzz{{zyz{zy{zyyzyzz{z{zy{yzzyyyxyyzzzzzyz{zy{yyxy{zzzzz{z{yxyzyyywzyzzzz{zyzyyzyzzyzzzzyyzzyzyyzyyzzzzzzy{yyyyyyyyyzzyzz{zyyzxyyzyyzyzzzyzzyzyyyzyyyxzxy{{yyzyyyyzyyzyyyzzzzyyxyyyyzzyz{zzxzzyyyyyyzzz{{zzyzyyyzyxzyzxyyzxyzzzyxyyyzyzzzzzyyxzzzyyzzyzyy{zzyyyzyyzzy{yy{z{yyyyxyzx{zzzz{zyyzyxxzyyzzzyzyz{zzzyyyzyzzzzzzzz{yyx{zzyzzzz{z{zzyyzyzyz{{zz{z{{yzzzzyyzyz{{{{{{z{zzzzyz{|yzz{{{zzzzzzzzz{zzz{{{zyyz{{{zzzy{{{z|zzzzzzzz{zzz{{{z{zzzzyzzz{z{{{z{zzz{zz{y{zz{{zzzzz{{zzz{{{{{{{{{zyyz{zy{{{z{{{z{{z{y|{zyz{{{z{{{yzzzyzzyy{yzz{zz{zzzyzzyzzzz{yzyy{yyyzyzzzzyzz{{yyyyyyyyzyzzz{z{yyzyyzzyzzzzzz{{zy{zyzyyzzz{zyzzzzzyyyyzzzzyzzzzyyzxyyyyyyzyyz{yyyzyzzyxzzzyyzzzzyyzxyyyyzyz{{z{zxyyyyyyzzzzzzzz{zyyxyzyzy{zzzzyzyyyyxyxzyzzzyz{yzyyzyyyyyzyzz{zzzyyyyyyyzyyz{y{zyzyzyxyzyzzz{z|zyzzzyyzzz{zy{zzzzzzzyyy{{z{zzz{zzzzyzzyzzzzzz{zzyzzyyzyyzzzz{zzzyyyyyzzzzzz{y{zyzyzzzzyz{zzzz{z{zyzzzzzzz{|{{|zz{zzz{zz{{z{z{{|{yzz{zyz{{zy{{{{{zzyyzzzzz{{{{|zz{zzzzzz{{{zzz{{zzz{zzzzzz{{{||{zyzzyz|z{zz{z{{{{yyzzzzz{{y{{{{{zzz{zyzy{{z|{{{{{{{yzzz{zzzzz{{|z{yzzzyz{{{{{{{zzz{yzyzzyz{{zzy{zy{yzyyxzzzyzy{zzyzzzyzyxzzy{{{zzzyyyyyy{zzzzz{z{yyxyyyy{z{yzyz{zzzyyxzx{zy{y{yyyzyyyyyzyzzyy{zzzzzyzyzzzyzyzzzzzzxzyyyxyxzy{zzyyyzyzyyy{{zzyzzzzxyyyyyyzz{y{z{zzyzyyyxyyzzzzyzzzxzyyxzyz{zzy{zzzyyyyzzyyyyzyzz{yyyzyyyxzzzzzzzzzyyxzyzyzzzyyz{|yzyzzxzzyyx{{z{zzyyzzzzyz{{zzz{{zzzzyzzzz{|zyzzz{zzyzzyyzzz{zz{z{yyzzzyzz{zzzzz{{zzyzzzzz{{{{{{{zzyy{z{y{{z{zz|zzzyzzzzyz{{{{{{{zzzzz{zz{z{z{{{{{zz{z{zzyz{{{||{{yyzyyz{{||{{z||zz{zzzzz{{z{z{z{{y{{{zzzz{z{z{{z{zzz{z{y|{zz{{|zzzzzy{zyz{zz{{|{{zzzz{zyzzz|zz{zyzzzyyyzz{{zzzyyyyzzyxyyzzzzzyzzzyyzyxyyyzyzzzzzzyzzyzyz{yzz{{zy{yzyxxyxyz{yzzzzzxzyyyxxzzzyyzyzyyyyyyzzyzyyyz{zxzyx{yyzzzyzxyzzzxzyyyyzyyyyzzzzyyyzyyzyyz{yyy{yyxyyyyyyzyyyyz{y{yyyyyyxyyz{zzzzxyzyzyzyyzz{yzzzzyyyyyyxzyzzzzzzyx{xzzyyyyzzx{zz{yzyxyzyzz{xy{{zzxzzyxyyzyzyzzzyyyyyyxzyyzyzzzz{yzyzzxyzyzzzz{yzyyzzzzzyyz{zzz{zyyyzyyyyy{{yzz{{yy{zzzy{zzz{{{{{z|yyzzyzzzz{zzzzzzzzzyyzz{z{zz{zzzzyzyzy{|zz{{|zzzyzzzzzz|zzy{zz{zzzzzzzz|z{{{{{zzz{yzz{|z{{{{{{{yyzzyzzzz{zz{{{zyzzzzzyzy{{zz{{zzzzyyzzzyzz{zz{zzyyyzzyzzzzy{{{zyzyyyyyyzzzzzzzzyyyyyyyzzzyyzyzyyzxyyyzzzzzzzzzyzzyyyzzzyzzzz{zzzyyyyyxyzyyyz{{zzzyyzzyzyzzyyzzzxyyyyzxy{yyzzzyyyzyzzyyzyzyzzzyzzzxyzzz{yyzzyzzyyzyyyxxyyy{xyyzyzzxxyyzxzzyyz{yyyzyyyyyyyyzy{yzzyyyzyzyzyzyzyz{yyyyxzxyyzyzy{yzyyzzzyxyyyzyyzzz{yyyzyzxyzzzzz|zzyyyyxzyzzzzzzzzzzzzzyyyyzzzzzzzzyzyyyzyyyzzzz|z{yyxyyyxz{yzy{z{zyyzyyzzzzzzzzyz{zzyyzzyzzy{{{{zzzzyzyzyyzz{{z{{zyyzyyyyzz{zz{{zzxyxyyyzzzz{{z{zzyzzzzzzz{z{z{z{y{zzzzzz{{z{z{{{|zyzzzz{z{zz{{zzzzzzz{zz{zzz{zzz{zzzzzzzzzz{{||zzyzzzzz{{z{zzzz{{zz{zzzyy{z{zz{zyzzyzzzyzzzzzyyzxzzzzzzyyzzzzyzzyyyzyxyyy{zzzzzzzzyyyzzyzzzz{z{yzyyzzyyzzy{zyzzyzyxzxxyyzyzyzyzzzzzyyz{xyzyzzz{zzyyyyyyzzzzzzzzzzzyyyxyyzzzzzz{zyyyyzyyyyyyzyyyyzyyyyyyyzyzzzzzzzyyzyzxyxyyzzzz{yzyyyzzyzzyzyz{zzyzyyyyxxyyyyzzzyzyyyzyxzzyzyzz{zyyyzyzzyzz{zyz{zy{yyyzzzzzzz{zzzzzyyzyyzzzzzy{{zzzzyzyyzzzzzz{zzzzyzy{yzzzzzz|zyzyyyzzyzzyzyz{{zzzzzzzy{z|zz{zzzzzzzyzyz{{z{y{{zyzyzyyzz|{|z{zz{zzzzz{z{z{z{zz|{zzzzzzzzz{{{z{z{zzzzzzzz|z{z{z|zyz{yzzzz{z{{z{z{yzzzyz{{{{{{z{{{zz{{{zz{|z{{|z|z{zy{zzyz{{{{{||zzzzzz{yzzzzzzz{zyzzyyzzyzyzzzyzzxzyyxyyzzzzzzzzyzzzyzyzy{{yyzz{zyzyzyzyzzzzzzzzzzyzzzzzyy{yzy{zzzzyyyzyzzzzy{zzyyzyzyyyy{zyzy{zzzyyyxyyz{z{zzyyzzzyyyyzyzzyyyzzyyyxyxyzyyyzz{zzyyyyyzyyzyzxzzyzzxzywyyyyzz{zzzzzyzyzzzyzzzyyz{{yyzyyxyxz{zzzz{zzzyzyzyxz{yzyzzzzzzz{yzyzzzzz{zzzy{yyyzzzyz{zz{zyyyzzzyzzz|zz{z{zyzyyzyzyzzzzzz{yzzzzzyxz{{zyz{{zzyzzyzy{{{z{z|{yyzyzyyzyz{{z{{{yzyz{{zzzzz|{{z{zz{{zyzz{z{{z{{{zyzyzzzzz{{zz{{zzyzzy{{zzzz{z|z{{{zzz{zzy{{{{{{{z{{zzz{y|zz{z{{z{zzz{zzzz{z{{{{{{zyzzzzz{{{{z{{{{{{zzzyyy|{z{{z{zzzzyxzz{z{z{zz{zzzyzzzzz{zzzyzyzyzzyyyyzzzzyzzzzyyyyyzyzyzyz{zzyyyzyzyyzyyz{{zzzyzyyzyyzzy{y{zyyzyzyyyxzzz{yzyzzyyzyzyyy{yyz{{zyzyyyyxyzz|zy{zzyyyyzyyzyzyyyzyzyyyyyzzyzyzzyz{yyyyyxyyyzzzy{zzzzyzzyyyyy{yyyyyzyxyyyxyyyzzzyz{zyzyyyyyyzzzyyzzzzyzyyyyyzzyyz{z{zxyyzxyyyzzyz{yzzyzxyxyzyzzz{zzzxyzyzyzz{zzzzzzyzyyzyzyzy{{zyzzzzz{yzzyyzzzzzz{zzyyzzzzzz{{y{zz{{zzy{yyzzzz{{z{{zzzzyyzzz{yz{y{{zz{yzyyyzz{zzz{{zzyzzzyyz|{{y{{{zzzzzzz{zzz{{{{z{zzyzyzz{{z{|z{{{zyzyzzz{{zzzzz{zzyzyzy{z{{{{||{{zz{zzzz{{z{z{z{zzyzzyzzzzzzzz{{{yzzy{{zz{z{yz{zz{zyyyyyz{z{{z{yzzyyyyyyyy{zzzzyzyyyyyyyz{zzyzz{yzzyyxzxyyyzzzzyyzzzxyyzzzz{yz{zzyyyyyyzxyzzyzz{yyzyyyyyzzzyzyzzzyzyzyyzyy|zyzzz{yyyxyyzzyzyyzyyxxyyzxyzzzzzz{zyyyyyyzzyxzzzz{zzzyyzyyyyy{yzzzzzyxzxyxyyyzzzyzzy{zyyzyzyz{zzyy{yyyzyyyzxzzyyzyz{yyzy{yyyzzzz{zzzzyzyzyzzzyyyzz{{yxyyzyzz{zzzzz{zyzzyyyzxzzzyz{zyzyzzzyzyz{{zzzzzzzyzxyzy{zzzz{zzzzzzy{zz{{z{z{zzzzzzzyzzzy{zzz{{zyxyyzzy{zzzzz{z{zyzz{zyz{z{z{|zzzzzyzzzz{{{z{{{zyz{yzz{zz{{zzz{{zyzyzzy{z{{z{zzz{zzzyzzz{zzzz{{{zyzzyzzzzz{{{{|zzyyzzzz{{zyz{z{{zzzzzyzyz{zzzyzzyzyyyyzz{zyzy{zyyzyyyzyy{yzzyzzyyzxxzyyzzz{zzyzzzzxyzyyzyy{zy{zzxzyyyzzyz{zzzzzzxyyyyzxzzzzyzyzyzzyyyzyyzzyyzzzyzxyyyyyzzyyy{zzyyzyxxxxzyyyy{z{zyyzyxyzzyzzzzzyzyzyyyxyyxzzzzzyyyzyyxxzzyz{zzyyyyyxzyyyyyzyyzzzzyxyzyyyzyyzzzz{zzyyyzzzzzz{zz{{yzzzyyzxzyzzzzz{zyyzyyyyyzyzz{zyzyzzxzz{zz{z{z{zyzzzzyyz{zz{{z{zyyzyzyzy{zzzzzzzzyzzyyyyzz{z{{z{zzzzzzy{zz{|zz{zyzzyyyzzzz{y{{y{zz{zzyzzz{z|{{}|zzyyyyzz{{zzzz{zzzzzzy{zzz{z{{{{zy{zzyzzz{{|z{{zz{zz{x{zyz{{||{{{zzz{{zzzz{{{{{z{zz{{zzz{zz{|{zz{zyy{zzyz{{{{{{z{z{zz{{yz{zz{{{{zzzyzyyz{zzzz{zzyxyyxyzyzzyyzzyzyzyyyzyyzzzzzzzzzyxxyzyzzzzz{zzzzyyyxyyxy{{yzzzz{yzyyyyyzzyyyzzzyyzyzyyyzzzyyzyyyyyyyyyyzz{yy{zzzyxyyyyyyyx{yyzyyyyyyxxxyyzyyyyzyyzyzyyzyy{zyzzzyxxzyyxxzxzyzyzzyxyyyyxyyzzzyzzyyyyxxyyzxyyyxzzzzxyyzyyyzzzyzz{{zyyyzyzzyzzyyz{zzyyyyyyzzzzzzz{zyyyyyy{yzzzzzy{zzzzzzyyyyz{zzzzzyyzxzyzzzz{zzyzyzyyzzyzyzzzzzzzzzzzyzzzz{zzzz{{zy{yyzyzzz{z{{{z{zy{yyyxyyzyzzzzz{yzyzyyzz{{zyz{{{zzy{z{z{zzz{{{zzyzzyzzy{{z{{z{zzz{{{zyyzzz{{{{{{yyyzzz{yzz{z{{zzzz{{zzz{zz{{{z{yyzzzzzyzzzzzz{{zyyzzzyzz{y{{y{zyzyyyxyzz{yzzzzzyyzyyyzyzyzzzyzzzxzyyyyyzzzzz{{zzyyyyyzyzzyy{z{{{yzxyxyyyyz{zzzzyzyzyxzyzyzyzzzzzyyyzyyyzxyzzzzyzyxyyzyyyzzzyzzzyxyxyyyxyyzzyyz{xxxxxxxyyzzyyzzzyyyyyyxyyyyyzyzzzyyyxzyyyyyzyzzzyyyyxyyyy{yxyzy{zyyyyxyxyyyyzz{zyyyyyzyyyzz{zyzzyyzyyyyyyzzyzzyzyyyyyxzyzz{zzzzyzyzyyyzzzzzyzzzzzzyzzy{zyzyyy{y{zyyzzzyyz{zzy{zzzzxzyzyz{zzz{zz{zzyzzzyzzz{{z{zzyzy{zzzzzzz{zz{zyyyzzzyz{zzzzy|{zyzzzyzz{|{zz{zzzzyz{zzyyzzzz|zzzz{zzzzzz{zz{{{z{yzzyz{z{zz{zz{{zyzzzyyy{z{{{z{{zy{zzzzz{{y{zy{{zzzyzzy{z{y{{{{{{zzzyyzyz{{zzzz{zzzzyyyyzyyzzyyyzyzyyyyyyzzyzyzzzyyyxyzzzzzzzzz{zzyxyyzyzyzzzzz{zyzyyyyyyyy{yz{zzyyyyyyyzyzz{zzzyzzyyyyyyyyyz{zzyzyyyyyyyz{{yzzzyyyyyzxyzzzyzzz{yzxyyyyyzzzyzzzyyyxyyyyzyz{z{zyzyyyxyyyyyyzyzz{zyyyyxyyxzyyzzzzyzyzyyyyyz{{yy{zzyyzzxyx{yzzzzzzzzyyyzyzzzzzy{zz{zzyzzyzzzzzzz{{{zzyyzzyyzzzyzzyzzzyyzzzxz{{zz{z{yyzyzzzyzzzzyzzz{yyzzyyzz{zz{{{z{zzzzzzzzz{{{{zzzzzz{{zy{{y{z{{{{zzzzyyyz{{{{{{zzzyzzzy{{{zzz{|{zzz{y{zzz|z{zz{{{zz{zzzz{|z|{{|zzzzy{zzy{{{{{{{|zyzzzyz{zzz{z{{{zyzz{zzz{{z{z{{{z{zzzzzz{{{{z{z{{{zzzyzy{zzzz{{zzyyzyzzy{{z{z{z{yxyyyyyxyz{zzzzzyzyyyxxzzzzyy{zzzxyxyzyxzzyz{zzzyyyzzyyyzzzzyzz{yyzxxyyyzz{yyy{zzxyyyyzxzyzzyzzzyyyyyzzyzyyzyzyyyyyyzzxyxyz{zzzzyzyyyyyyyyy{yyz{yxyyxxxzyzzyyzyzyzzyyyxyyzzyzzy{zzyyyyyyzyyyyzzyzzzyyyzyyzzzy{zzyyzyyyzxyy{zzzzyyzyyyyzyzyzzzyz|zyzyyyzyzzzzyzz{zyzyzyzyzzy{{zy{yyy{yxz{zzy{z{{{yyzzyzzyz{{{{zzzzyzyzyzzz{zzzzz{zzzzyzz{{zzzz{z{zzzzzzyzzz{{zzy{zzzzyzyz{|{z{{{zzzzzz{zz{{{{z{{{zzzzz{{zz{zz{zz||zy{yz{zz|{|zz{{zyzzyzz{zz{|z{z{{zz{z{zzy{zzz{|{{zy{{zz{{{|{zy{zzzyz{zzyyzzz{{{{zyzzzzzzz{yzyzzzzyyyzyyyzy{zzyxyyyyyxyxyzzzyzzzzyzyyzyyyyzyyzyzzyzyyyzyyzzzyzz{zzyzyzyzzzzzzyzzyyyzyyyyyyzyzyyzzzyyyzy{xzyyyyzzzyyzyzyyxyyyzyyyzzxyyyyyzyyzzyzzyyyzyyyxxyzzyyzxyyyyyyyxxzyzzzzzzzzzxxzzxxzy{yzz{yyyyyxxyyyyyyzy{zyyyyzyyyzyyyzzzyyzyzyxyzyzyyy{zyzyyzyxzzzzzzzyzzyzzyzzzzzzzyzzzyzyyxzyzzyyz{zzzzzyyzyyxy{|zzzzyzyzzzzxxy{zyzz{zyyzzyyyzy{{zz{{zz{yyzyyyz{z{zzz{y{zyyzzz{{zzz{zzyzzzzzyyz{zz{{z{{yzzzyyzzz{zzzz{zzzzzz{zz{{z{z{{zyzyzzzzz|{zz{z{zzzz{yzzzz|{zz{{zzyzzzzzy{zzzz{{yzzy{zzy{{zz|{z{zzyyzxzyzzzzz{|{yyyzzzzyzy{zyz{zzy{zzyzzzzzzzyyyyyxyyxzyyzzyzyzzyyzyyyxyzzzy{zzzzyyyzzyy{zzzzzz{yzyyzxyyzzzzyyzzyxzyzyzyzyzyzzzzyyzyyyzyyzyyyzz{yyyyyyyyyzzzy{{yyzyyyxyzyyyzy{yzzyyyxyyyyyzyzzyzxyyxyyxyyzzzzzz{zyyyxyyyyzzzyzzzyzyzzxxxyzyxzzyyyxywyyyyyzyzz{zzyyzyyyyyzzzyzzzzzyyyyxyyzyzy{yzzzxzyyyyzzzzzz{z{zzzyyyzyzz{y{zz{yyyyzyzyzzzzzzzzzzyyyyzz{z{zzzzz{yzzyyzzz{zzz{{zz{zyyzzyzyzz{|{zyzzzyzzzz{z{z{{{zyzzzzzy{{{yzz{{zzzzzzzyzz{z{{zzz{zyz{{zz{zz{z{{{zyzz{zyy|z{{z{z{zzz{z{yz{zzz{{{z{yzy{zzz{z{z{{|zzyzy{y{zzz{{z{{yz{zzzzyzzzzz{|{zzzzyzzyz{yzz{{yyzzyyyyzzz{{y{yzzyyyxyyxyzzyzzzyyyzzyzxyyz{zzzyzyyyyy{zxzyyzyzz{zyyyzyxyyyzyyzzzyzywyxyyzyzzyzzzzyzxyyyyxzyzz{zzzyyyzxxzyzyyyzzyyyzyyyyzzzyzyzzzyxyxyxyxyzyyzzzyyzyyyxxzyyyyzzyyzxxyxyxyyzzyz{zyyyyzxyyyxzyyzzzyyyyyxyyyzyzzxzyyxyzyzxyxzyyzyz{yzyzyzyzyzzyyz{yzzzxyzyyyyzzzzzzzyyyyzyxzzzzzzyzzzzzzzyzzzzz{{{zzzyzzyzzyz{yz{z{zyyzyyyyyz{zzz{z{zyyzzyzyzzz{zyy{yyz{zzzyz{yzz{{{zyzyzyyzyzzz{z{zzzzyzyyz{{yz{{{z{zzyyzzz{{zzz{zzzyzz{zzz{{zz{yzzyzyzyz{zzzy{zzz{zy{{zyyz{zzz{{{|zz{{zzzy{{zzz{z{zzyzzzzyz{z{yy{{yyyzyzyyy{zzzzzzzyzyyxzyyy{zzzzyyyzyyyyyzzyyzyz{zzzyzyyyz{zzzyzyzzyxyzyzzzzzz{z{zzzyzzyyyzzzyzz{zyzyyyyxzzzyzyyzzzzzyzyyyzyyyzzz{zyyyyyxzzzzzzyzzyyyzyxzzyzz{{zyxzyxzyyyyyyyzz{yzyzzxzyyyz{yz{zyzyyyyyyxzzzzzzzzyyzzyyzyzyyxyyzzz{xyzyzyzzyzzzzzyyyyz{xyzzzzzz{zzzyy{yzxyzyzzzzzyzzyzyyzyyzz{zzzyzyyzzyyz{zz{{zz{yzyyzzzzzzz{zzzzyzyzzzy{{z{yz{zzyyzzzzyzz{z{zzz|zz{yzyz{{{{zz{z{{z{yzzzz{zz{{|{yyyzyzyy{{{zz{{{|yzz{yyy{{zz{z{{zzzzyzz{zzz{|{{z{yzzzzzzz{{zz{{{zzzzzzz{zz{{z{{z{{zzz{zzzzz{{|{z{zzzzzzz{z{zz{|{z{zzzzzzz{zz{z{{z{zzy{{zzz{{zz{zzzzyzzyzzy{z{zzyxzyyyyyxyyyyyyyzzzxyyxxyxzzyzzz{zyyyyyyy{xyzzzyzzxzyyyyyyzzyyzzzyzzxxxyyzyyyzzxzxxzyyyywyyyzyzzzyyzyzxzyyzzyyzzzyyxxzyxyyyyzyy{zyyyyyyyyyzzzzzyxzyxyyyyyyyzzyzyyzzyyyyxyzzyyyyzzyyzyyyzyyyyyyzy{yyxyyyyxxzyxyzzzyzyyyzyxzzzyyzy{yyyyzyyyz{yyzy{zyyyyyxyyyzzy{{z{zyyyyxyyzzzyyxzzzzzyyyyyyzzyz{zzzyzzzyzyzzz{y{{{zyyyyzyzyzzzzzzzzyyxzyzyyzy{{zzzzyzyyyzyzy{zy{{{yyyzyzyyzz{zzzzzzxzyyyyyz|zzz{{{zyyyy{{zzzyzz{z{z{yzzzzzy{{z{{{zzzzzzyy{{{zz{zz{{yzzyzy{{zzz{{{zzzzz{yyy{zz{{{y{zz{zzzyxz{zzzy{{zzzyzyyyz{zyzz{zxyyyxyyxzzzyyzzyyyxyxxyyzyzzyxyzyzyyzyyyzzyyz{z{zzzyyyzyyyyzzzzzzyyzyyyyzzzzyzzzyyyyxyyzyzyyyzyyyyyyyyzyzzyyyyzzyyxyxxyxyyzyyzzzyyyyyyyxyzzzzzyzyyxxyxxzzyyyyzzzyyyxxyyyyyyzyyyzyzyxywxxyzzyzzzzyzyyzxyxzyzyz{zyyyzyyxxyyzyzyzzzxyzyzyyyyyzzzzzzzy{xyyyyyzzzzzyzzyyyzyzyyyz{yzzzzzzyyzzzzzzzzzzzyyyyyyyyzzyyz{zzyzyyxzzyzz{yxzzyxyxyzzzzzzzz{y{zzyyzz{zyzzz|zyz{yzyzzzyzyzz{zzzzzzzy{yyyzz{zzzzzzzzyzyyy{zz{{{{zzz{yzzz{z|z{{|z{zyzzyzyy{{zzz{|{zz{zzzzzz{{{{z{{zzyzzzzz{z{{zz{z{zzzzzzyzzz{z{{zzyzzyyyy{zzzz{{{yyzzyzzzyz{zyz{{yyzy{zzyz{zzzyzyyxyzyyyyyyyyyyzyyyzyyyxyzzyzzzzyyzyyzyzxzyzzzzzzzxyyyyyyyyz{yzzzzyyyxyxyzzzyzzzzyyyyyzyyyyzyyyzyyyzzyyyyyzyyzzzzyyzyyyxyyyzzyzzzyyyyzyyxyzzy{y{yzyxyxyyyyyzyzz{zyxyzxyyyxz{yzyzyyzyyyyyyyzzyxzzyyyxxyyzyyzzyzzy{zxyyyzyzzyzyz{zyyyzyyyyyz{zzzyzz|zyyyyyy{zyzzyzz{zyzyyyxzz{z{z{zzxzzyyyzz{zy{zzyzzyzzyzzzz{zzz{{zzyzzxyz{{z{z{zyzzyzyyz{yzzzz{{zzz{{zyzzzzy{zzz{zzzzzzyyz{z||{{zzyzzy{zzz{{z{z{{z{yzy{{zz{zz{z{{zyzzzz{zz{{{zz{{{y{{zzyz{zzzy{zzzy{zzz{zz{zyz{{{z{yzyyzz{{z{{zz|zzzzzyzzzzz{z{{|{zxzyzzzyzyzz{{yyzzzyxzyyz{zy{y{xyyyxyyxzyyyzz{zzyzzzyyxzyyyzz{yyyyyyxzyzyxzy{{{{xxyyyyyzzyzyzz{yyyzyyzxyyyzz{z{xxyzzzyyzzzzzzzzzyyyzyxzyzzyzzyzyzyzyzxzyyyyzzz{yyyyyyzxyyyyxyyxyyzyzyxyzzyzzy{zzzyyxyyxxzyzyz{zzxxyzxyyyyyyzzzzyzzyxzyyyzyzyyzyyyyyzyyy{x{zzzzzyyyyyyzzzzzzzzz{yyzzyyyyyyzyzzzyzzzyyyzzzyzyzyzzyyzyzyzzzzzy{zz{zzyyyyyyzyzy{zzz{zyzzyyyz{zzzzzzzyzzzzyyzz{{zzz{yy{yyyzzzz{zzzzzzy{{yyyyzzz{zzz{zy{zzyyzz{{z{z{{zzzyzz{z{zzz{{{|zyzzzzzyz}z|z{z{zzzzz{zzzz{{{z{{zyyz{yzzz{{{z{{||zz{zzzz{{zzy{{{{zyyzz{yyzzzy{{{{{z{zyyyzz{z{yzz{z{yyyzz{{{zyzzyzyyyyxxxy{yzyyyzzyyyxyyzy{yzyzzzyyzxxyyzzzzy{{{{zyyxyyyzzz{yyzzzyyyxyyyxyyzyyzzzyyyyyyyyyyzzzzzyzyyyyzyyzzyzyyz{yzzyxyyyyzyzyyzzyzzyyyxyyyzzzzxyyyxyyyxyzzyyyzzyzyxyyyyzz{yzyzzzyyxyzyyxyyyyyzzx{zyyyxyyzzzzyz{{zyxyyyxxyzzyyy{yzyyzyyyyy{zyz{zzzxyzzyyzy{zzyzzzzyzyzyzyzz{zyz{zz{zyzyzy{{zz{zzyyzzzzzyzzzzzyy{z{zyyyyzy{{{{yzzzzyzzzyyz{{z{zzz{yzzy{zzyzzzzzzz{zzzzyxyzzz{zzzzz{zzzzzzzz|z{zz{{zzz{y{yzzzzzzz{{zyzz{zzzzzz{z{z|zzzzzyyyz{z{zz{zzzzyyz{{{{{z{{zzz|{y{|yy{{z{{{{{zzyzzyzyzzzz{z|z{yzzzzzyz{{zz{zz{yyyyzzyzzzyzyzzzzzyxyxyyzzzyz{yyyyyxzyxzzzzz{z{zzyyzyyy{zzzzz{zzxyyyyyzzz{zyz{zyyyxyxzyzyzzyzz{yzyxyxzzxy{yzyzzyzzyyyzy{zyxzyyzyyyyyzyyzyyzzzzzyyyyxzyzzyyzyy{yzyxyyyyyyy{yzyzyzzzyyyyyzyz{zyzzyxyzyzyxxzzzyzzzzyyyyyyyxzzyyz{yyyyxzyyyyy{zzz{z{yzyyxyzzzyy{{{{zzzyyxzyzzz{yzz{{zyyxyyyzz{zz{zy{zyyyyzzzzzzzzzzzyzzzzyyzz{yzzzzyzzyzyxz{{{zyzzz{zzyzyzz{zz{{{{{zyyzzz{zz{zzz{{zzyz{zyzz{zz{zzz{{zzzyzzz{{z{z{{{zzzyz{zzzyy{{z|z|zzzzz{z{{{zzz{{zz{yyyzzz{z{zz{{{zzzz{zzz{z{z{{{{zzzz{y{zzz{{{{{zyzyyzzyzz{zzz|{z{yzyzyzzzzzz{{zzyzxyxyyy{zzzzzyyyxzyyxyy{zyzyz{yyxzyyyyz{zyzzyyzyyyyyyyzzzyzy{zyyyzyyyyyzzzzyzzzyzxxzyyyzzyyzy{yzyyzyzyxyyyyyzzzyzyyxxyyyzzzyyyyyyyyyxxyyyzyzy{yyyyyyyyy{yyy{y{xxyxxyxx{zzzzzzzzyyxyxzyyyzzyyzzzyyyyyyyxyyyzyzzyxyxyyyzzyyyyzzzzxyyyzyyyzyzyzzzzyyyyyyxz{yzyy{{yyzyxyzyyzz{zzz{zyzyzyyyzzz{yzzzzzzyzzzyyyzy{zzzyyyzyzzyzzzzzzz{zyyyyyxzyzzzzzzyzyzyyyyyzzz{zz{{yyyzyxzzzzzzzzy{zzzyzyzz{{zzz{|zzyyzyz{yz{zz{z|{zzzyyzzzzzyz{{zz{zzzy{yyyz{{{z{{zyzzzzz{z{zzz{z{zyzz{zyz{yz{{{{{{{zz{zzz{z{yz{zzy{zy{zzzzzzyz{zzyzzzyzzzzzzzz{zzzzzyyyyyyzyyyzyyyyyxzyxxzyyyyyzzyzyxyyxy{zyyzzzzyyxxyxyxyyzyzzzzyyyyyxxyyzzzyyyzyyyyyxyxyzzzzyz{yyzxyxyxyzzyxzzyzyyyyxyyyzzzyyzzyyyyyyyyzyyyzyyzxxxxyyyxzyzzyzyzxyyyxzwyyyyyyyzyyyzyyyyyyyyzyyxzyyxyxyzyxyzyyyyzyyyxyxyxxyzyzyzyywyyyyxyzzzyyz{yyyyyzyzyyzzyyzyzzzzxzxzyzzzyzzzzzzyyyyxyzzyzzzzzyy{yyyyyzyz|zzyzyyyyyyxzz{zzyzzzyyyyzzzxyyyzzzzzzyzzyzzyzzzzzzz{yzzzyyzzzzzzzz{{zyyzyyyyyyzzzy{zzzyzzyyz{{zzzz{{zzyyz{zzy{z{zz{{zzy{zzyyz{yz{{{z{zy{zzyzzy{z{z{z|zyzzzyyz{zz{z{zzzyz{zzzzzzzzzz{{zyy{zzyzyyzzz{zzzyzzzzxyz{zyz{zzzzzyzzyyzyz{zzyyyxyzxxyxyzzyzzzyyyyxyyyyz{yzz{zyyyyyyyxyyyzz{zzyzxzyzyyyzzyzzyzyyyyzyyyy{zzzzzzxzxyxyxyx{yyzyzzyyyyyxxzzyzyyyyzzyyxyyzyyyyyzyzyyyxyywyzyyzzzyzzyyxxxyyyz{zyzzzzzzyzyyxxyyyzyyyzzxxyyxyyzzyxyzzzyzyyyxyyyzzyzzzzxyyzyyyyyyzyz{{zzxxzyxyzyyzyyzzzzzzzyzzzzzzyzzzzyxyyyzzyzzzzzzzzzzyzyyzyy{{{zzzzzyzzyyyyzz{xz{zyzzzyzzyyy{zzzzzy{zzzzyyzzzy|zz{{zyzzzzzyzyz{zz{{zyyyzyzyy{{zzz{zyyzyzzzy{{{z{{z{zzy{zz{z|{{y{|z{{zz{zzzzz{zzz|{{{zzzzzzyz{zzz{{zzyzyzzzzzzzzzz{{{{{zzzy{yzz{{z{{{{yy{zyzz{{zzz{{{zzyyzyyz{zzzy{zyyzyyyxyzzzzzzyzyyyyzyzyyzzyzyyzyzzxyyyyzzyzyz{{zyxyyyz{yyyy{{{yzyyzyyxzzyzzz{zyyzyxyyyyy{zyy{z{yyzyxz{yyzzzyzzyyyxyyxyyyyyzyzyyyzxxxzyxyzxzzyzzzyyzyyyyyyzzzz{yyzyyyyxxyy{zzz{{yyyxzxyyyyzyyyz{yyxyyxxxxyyyzzzzzzyywyxyyzzzzyzzyyzyyyyxzyzyy{zzyyzz{xyz{zzyzzzzzzxzyyzyyzzzzz{{yzyzyyzzyzzzz{zzzxzyzzyyzzyzz{zzyyzyzzyz{{{zz{{{yzyyyyyzz{{zz{z{zzy{zyzzzzz{zz{zyyzzzzzzz{y|z{zzyzyzyzyyzz{{z{z{{yzzyyzzz{z{zz{{zzzzzzyz{{zz{{z{{zzzyzzy{}zz{z{z{z{{yyzzyzz{z{z|{zzyzzzzzz{{zz{z{zyzzzy{{{{{{{z{yzzyz{zyzzzzzzz{{zyzzzzzzzz{zz{zzzzxyxzzxzz{yzzzzyyxyxyxzyzyxyzzzzyyyyyzyyyzzzzyyyxxxxyxzyyyzz{zzzyyxxxzyzzyyyzyzyxyyxyzyzyzzzx{zzxzyyyyxzzyyyzzzzyzyyyyxzzyyyzyzyzxxyxyxyyzzzzzzyxyyyyyyyyzxzzzxyyyyyxxxxxyzyyzxxxyyyxxyzzyzzzyxzyyyyxyxyyyyzzx{yyxyxyyyyyyzzyzyyyyyyyxyyyz{yzzyyyy{zyyxyyyzz{zyzyyzxxyyzyzzzzzzyyzzyzyzzyz{zzzyyzzzxyyzzzzzzzyzyzxyyyxzz{yzzzyzyyzyyxyzyzzzyzzyzyzzyyzyz{y{{{zzzzyyzzyz{zzzzz|{zzyzyyyzz{zzzzz{zyyyyyyz{{zz{{{zzzzz{zyzzzz{z{{zzzzzyzy{{{{z{y{zzyxyzzzyz{yy{{zzzzyzyzz{z{{z{{{zzyz{zzz{{zz{zz{z{{xzzyyzzzzz{zzzzzzxyyyzzy{zzzzzyxyzyzxz{{z{{yzyzyxzyyxyy{y{{{yzyyyyxzzyzzzzz|zzyyyyzyzzzyzzzzzzyyyzyxyyyzzyyzzzyyzxxyx{yzzyzzyzyyxxzyyyzxyyzyzzyzxyyyxzyzzxzzzyyyyyzyxyyzzzzzzyyyyyyyyxyyzyzzyyxyyyyxxzy{yzz{zzyzxxyyxyyzzzzzzyyxzyzxyyzyzzyzzyxyxxxyxxzyyyzzyyyzyyyyyzzy{zzz{yzyzzyzyzzzzzzz{yyyzyyzyzzzzzzzzyzyyyyzzzzyzz{{{zzzzzzzyzzz{yzzyzyyzyzzz{yzzzzzzzyyz{yyzz{zy{{{yzyzz{zyzz{{zzzzyzyzy{zzyzzyz{{{{zz{zzxyy{zzz{{zz{yyyzyyz{{|zzz{{zy{zzzzzz{{{zz{z{zzyyzzzz{zz{z{|yzzzz{zz{z{{zz{{{yyzzy{{{zzz{{|{{{zz{zzzz{{{z{zzzzzyyzzzz|z{zz{{{zyzz{yzz{zz{zz{zzzzyyyyyzzzzyzyyxzyyyyxyzzzz{{zyyyyxxxyzxyzzzzzyyyxxyzzzyyzz{zzyxzyyzzzzyzy{zzyyyyyyyyxyyyyyyzyyxyyyxyyxyyzzzzyyxyyyyyyyy{yxzyyxxyxxyxyyyzzyyyzyxyyyxyxyzzzz{zyyyyzxyxyzzzyzyyzyzyyxxxxyyyyzyzzyyyxywyyyyzxyzz{yzyxyxyyyzyyzzzzyyyyyyyyyzxyyyzyzyyxyxzyzyzyzy{{zyzyyyyyyyyzyzyzyyyzyzzyzzzzzzzz{yyzzxyyyzyyyzyzyyyxyzyyyzzzyyzzyyyzzzyyzzzyzzzzyzzzyyyzzz{yzz{{xzzyzzzz|zz{zzz{yyyyyxyyzz{z{{{zzzyzyyyyz{zz{|zzzz{yzzzz{zzzzzz{zzyzy{zzz{z{{{{zzyzzyyz{{z{{y{zz{zzyzyyyzzz{zzzzzyyyz{yzzyzzzz|zyzyyz{zyz{zz{zzzzz{zyyzyz{yzy{zyyzzzxyyyyzzyyyzyyyyxyxyxyzzyzzzyyyyyyxxxyzxzzzzzyyxyxyyyyyyxz{yxyyzyyyxyyyzzyyyzzyyyxyyyzyzyzzzzyxyyyyxxyzyyzyzzyyyzyyyxyyzxyzyyyxywzywxyyyyyyyyxwyyyxyxyyzzzyzyyyyyyxxxyzyzyyzyyzywxyyxyyyzyyzzxyxyxxyyyyyyxzzzyzxxyxyyyzyzyyzyzyxyyzxxzyyzyy{zyzyxzyxyyyzzyzyzyyyxzzyzxyzyzzzzyyzzyyzzzzyzzz{zzyyyzxzxyyz{zz{zzxyxxyxyzyzzzyzyxyxyzzzyy{yyy{zyyyzyyyzzzz{{z{zzyy{yzzzyzyzzz{zzzyyzyzzzzzz{{zzzyzzzzxyyz{{zzzz{yzzzxzyzzz{zzz{{zyzz{yyy{{zzzz{{zyyzyzzyz{{zzzz{zzyyyzyzzzzyz{zzzzyzzyyyzzzzz{z{zzyyzzzzzzzyyz{{zyzzyyyxzzzzzzzzyyzyyyyyzzyzzyyzyyyxyxxyy{zzyzzzyxyyyyyxzyzzzz{zyzyyyyyyzyy{y{{zzxzyyzyyyzzzyzzzzxxyyxyxzyzzzzzzyyzyyyyzyzyyyzzyzyyyyzxyyzyyyzyzyyzxyyyyzyzzzzzyyyyyyyyxyzyyzzyzyyyyzyyyyzzzzyyyyzyyyyxxyyzzxyzzzyxyxyxxyxyyyzyzyzxyyyyyyzzzzzzyyxzywyxxyzzzyy{zyyyxyxyyzzzzzzzz{yyzzyyyzzzzyzyzyzzyxyyyzzyyzzzzzyyyzyyyyzzzzzzzzyyyyyyyzz{{zzzzzzxyyzzzz{zzy{zzzyyyzzzzzzzz{{zz{yyzzyzyy{yz{z{{zy{zyyzyzzzz{{zzzzyzyzyyzzzzzzz{zzyzzy{{z{zzz{z{zzyzzzzyzz{zz{{{zzzyz{{{zzz{{{zzzzzyyzyzzzzzzzz{{zyz{zyzzz|z{{zzz{zzyyzzzyy{z{{z{yzzyz{zy{{zzzzzyyyyzzyz{yyzyyzyxzyyxyyzyzyy{zyzxzzyyyzyzyyyz{zyzzyxyyzzzzyyzyyzzyzzzyxyxzzzyyzyyyyyxyzxyyzzyzzzzyyyyyyxzyzyzz{yzyxyyyxyzyzyyzzyyyzyyyyyyyyzyzyzzyyxyyyyyzzyyzzyyxxyxyyyyyyyyyyzzyxyxyxxyyzzyyz{yyxxyyyxyzyxyzzyzyyxyyyyyyyzzzzyyyzyyyxzzyyzzyyzyxyyzyyyz{z{y{zzzxyzxyzxzy{zyzyzzzzzyzyxzyzz{z{zzyyzzxyyzzyyyz{zzzyxyxyzzyzzzyzzzzyyzxy{zzzzyyy{xzyyzzyyzz{z{{z{xyyzzzzyzzy{zzz{zzzzyxzyy{z{{{{z{yzyzyzy{zyzzz{{zz{yzz{zzzz{z{{{{zzzzzyyz{zzzzz{{zyyzzzz{{z{y{{z{yzyzzzzz{zz|z{|zzzzzzy{yz{{{{z{z{yxzzzz{zz{zz{{zyzzzzyzz{zyzzzzzyxyzzyzzyzyyzyyxyyyzyyyyzzyyxzzyyyyyxyzxyyyyyzzyyyyyyxzzxyyyzyzyxzxxxyyyyzyyyyzyyyyxxyxzzzyyzzzyxyxyyxxyyzyzyyzyxyxyyyyxzzyyzyzyyyzyyyyzyx{yyzyyyxzyxyxxzzzzyzyyxyyxyyyyyzzyyyzyyyyxyxyxyyyyzzzzyyxxxxxyxyzyyyzxyyyyxxyyyxzzzyzxxxzyyxxyzzzzyzy{yxyyyyyyyzyyzzzzyzyyyyyzyyzzzzzyyzyyyyxzzzyzzzzzxzxzyyyz{yyyyzzyzyyyyzyyzyyzz{yyyzzyyyyzzzy{yz{zzyzyxyzzzzzyzy{yyzyyyyzzzyzz{zzzyyyyyy{zz{zyzzzzyzzzyzyz{zzyz|zzz{yyzzzz{z{z{zzzzzzyyzzzz{zzz{{{yzzyzzzz{{zz{zz{yyyyzxzzzz{{zz{zyzyzyzzzzz|z{{{zzyyyzyy{yzzzz{zyyyzyyyyyzzzzzyyyyyxzyyzzzzyy{yyyyyyyxxyyyzzzxzyyyzyywxyyzzyzy{zyzyyyzyyzyyyzzz{yxzyyyxyzyzzzyzyyyyyxwxxyyzzyzz{yyyyyyyxyyzyyzyzyyyyyxxyzzzxx{yzxyyyzyyzyz{yxyyzyyxyyxyyyzzzyzyyzxyyxyxxyyyyyyzzyyyyxyyyyyzyyyzzxxxxyxyyyzyyxxzyxyyxxyyyxyyyyzyyyyzyyyyxyzyzzyzzzxzxzyyyyyyyzzy{zyxyxyzzzzzyyyzzyyyyxyxyy{{zzzzzyyyyyyzyy{z{zz{zyyyyyyyxy{{zyzzzyyyzyyzzyzyyyzzzyzzy|zyyzzzzz{{zzyzyzyzzzzzz{{{{zyzzyyzzz{z{zzyzzyyzyzzzzzzz{{zzyyyzyy{zzzzz{|{{zyzzyzzzz{{{z{z{zyzyyyyy{z{z{zzz{zxyzyyz{{y{{{{{{zyzzzzzzzz{{{zzzyyyyzzzzzz{z{zzzzyzyyzzz{z{yz{zzyzyxyzxzyzzzyzzzyyyyyxzyxyyyzyzyyzzyxyyzzyzzyyzzyyxyyyyzy{zzz{zzzyxyzxxyyyzzzzzzyyxyyyxzzzzzzyzyyzyyyyxyzyyzy{yzyzxyyyyzzyzyzyyyyyxxyyyxyyyyzzzzxyxyyyzyzzyzzzyzyzyyxxyyyzzzzyzyyzyyyxxyzzyzzzzzyyyyzxyyzyyy{yyyyzxyyyyyzyzyzyzyyyyxyzxyyyzzzz{yyyyyxyyyzyyzzyzyzzzyxxyzzyzzz{yyzzzzyyyy{zzzz{yyyzzyyyxyzzzy{{zyyyyyyyzzz{zyy{{zzyzyyzz{z{zzyzy{zzyyzzzzz{z{{zzyzy{zyyy{zzzz{{{{zzzyyz{{zz|{zzzzyyzzy{z{z{z{{z{yyzyz{yyzz{z{{zz{yz{zzyzz|z{|z{zzy{{zz{yz{{z{z{{{zyzy{yzzzzzzz{zzzzyzyzz|{z|{z{{zzzyzzzyzzzzz{{{{zzzzzzyy{zzz{{{yyzyzyyyz{{yzyzyyxyxyxxyyzzzzyyzxyxyyxxyyzzzzzyzzyyxxxzyyyzy{zz{zxzxyyxxyyzzyy{zzyzxyyyxyzyzyzz{xyzyyyxyzzzzzzyyyxyyyyyxxyyyyzzyyyxyyyyyyyyyyxyzxyxyyxyxyyyyzzzyxyyyxyxzyyzyzzyzyy{xxxxxyzyzzyzyyyyxyxyyyzyyyyyyyyyxyyxyzzzyyzzzyzyxyyyxyzzyzzyzzyyxyyyy{zzyzzzzyyyyxxyyzyzyyyzzyyzxyyyyzzxyzzz{zyyxyxyyyzyzyzzzyxyyyyxyzyyyzzzyzyxyyxzzzzzzzzz{yzyyzzyzyzyy|z{zyyyyzyzzzzzzzz{{yyyzzyzyzy{yz{{{z{zyzzxx{zzyzy{{zzzyyyzyzzz{z{{{zzyzz{zzz|z{{z{z{zzzzyzzzzzz{z{{{yzzyzzyzz{{z{{zzzzz{{zyzzz{z{zzzyzyyzyyzyz{zy{zzzyyzzzyz{yyy{z{zzzyyxyyzzzzyyyyyyzyyyyzyyzzyxzzzyyyyyyxyyzyzyy{yxyxyyxyzx{yzyyzyxyzzxyyzzzzyyzzyyyxxzyyzzy{yzy{yyyyyyyyyy{yyyyzyyyyxxyyyzyzyzzzxyxxyyxzzyzyxyyyyyyyxxyzyyyyzyyyyxyyxzyyyyyyyzz{yzyyxxywyyyyyzzyyzyyyxxxzzyzyzyzxyxxzyxyzzyzyz{yyyyyyyxxz{zzzyzzyyyxyyyyyyzyyzyyyyyyyxzyyzzyy{z{xyyyyyyyzyyzzyzyyzzzzyyzy{yzzzzy{yyyyyyzyzzzyzzzyyyzxyzzzyzzz{zzzzzyyzyzzz{z{z{zyyyyzzzzzy{zz{z{zyzzyxzy{y{{z{{{zzzzz{zy{{zyzz{zyzzzyy{yz{zyzzz{{zyz{zzzz{z{zy{{{yzzyzzyz{{zz{zyzzzzzyzz{zzy{{zzzzyzzyzzzzz{zz{zzzzyyzzyz{zz{z|{{zyzyz{yyzyzyzzyyyzzxzyzzx{zyyyzyyxxyyyyyzyzzyyzyyyzxxyyyzyyzz{yzyxyyyyy{yyyzzzzzzyzxxxyzy{yyy{{yyyyyyyxyyzzzyyzzyzxxyxxyzyyyzyzyzyyyzyxzyzyyzxzzxyyxxyxzyxzxzzzywyywxxyzzzyzyz{yxxxyyyzxyzy{y{yyxzxxyyyzyyyzy{zxyyyyyyxxyyyyzyyyyxwyyxzy{yyyyzzzyyyyyyyyzz{zz{zyyyyzyyyyzzzzz{{yyzyyyyyzyyzyzzzyzyzwyyyz{zyxzz{zyxzyyxxyzzxy{zzzyzyyyyy{z{zzzzzzyzzyzzz{{zzzzzzyzyyyyyyzy{zzz{zyzzyyzzyzyzzzzzzzyzzzyyyzz{zz{{{zyyzyyyyz{{z{z{{zxyzzzz{z{z{zzzz{zzzzz{yz{z{z{{{zyzzy{zz{zzz{zyzzyyzyyxzzzzz{{yzzzzzyyzzz{z{{{{zzzyyzyyzyzzz|z{z{yzyyyzyzzz{yzzzyyzyyyzyzzzzyyzzxzyxyxzyyzzyyyzzyyzyywxyzyzyzyy{zyyxyyyyzzyy{z{{zxyyxxxy{zzzzzzzzzyyyxyxzyyzyzyyyyyyyyyyzzyyyyzyyyyyxxxyyzzyyzzzyxyyyyyyzyzzyyzyzyxyyxyyyzxyzzzyyyyxyxwxyzzyzy{yzyyyxyxxyyyyzzzyyyxyyyyyxzzxz{zzyyzyyyxxyzyzzzzyzzyyyxyxzzyyyzzyzyyyyzyyyyyxyzzyyzzyyyzyyyzzyzzzyzyzyyyyzzzyzzzyzyyyyyyxy{z{z{{zzyyyyyyyyzzyyyzyzyxzyyyy{{zzyzzzzyzzzzzzzz{zz{z{yzyzzyyzzzzzz{{z{yzz{zyzzzz{{{{{{zyzyzzzy{{zzz{{z{z{zzyy{zy{{{z|{zyzzzy{z{{z{{{{zyyzzzzxzzz{z{{z{yzzzyz{zzzz{z{{{zz{yzz{{yzz{zz{yzxxyyzz{{yzy{zzzzxzyyzzz{zzzzzzzyzyyxyyzzzzzyzxyzzyyxyyyyyyzyzyzyyzyzxyzyzzzzzzyxyxyyyxzy{zzzz{yyzyyyyyyzyzyzzzzzxyyyyxzyyzzzz{yxyxyyyxxyzxzzyyyzzyyyxyzzyyyyzzyyxyzyyyzyyzzyzzyyxyxxyyzzyzyyzyyyyyxyyxyyzzzy{zyxzyyyyxyzzzyyzzzxyyxyxyyyyyyzyyyyxxyyxyyzyyzzzzyxyyyyxxyyyzyz{zyyxxyxyyyzzxzzzzxzyyyxxyzyyzzzzzyzzyzzwxzzzyz{zzzyyzyyyyzzzzyzzzzxyxyyyyzzzzy{zzzyzyyyzxz{z{zyzzzzzzzyyzyzzzz{zzyzxzzz{xzz{zy{z{{yzzyyzzz{{|{z|zzzyzyyyyz{zzy|{zzyyzzzzzz{z{z{z{yyyyz{z{zzzzzz{zzyz{yzz{zzzz{{{z{yzzyzyzzzy{{{zzyzyzzzzz{{yz{{{{zzzyzz{zyzzz{{{{zyyzyzyxzzyzzyzzzyzzyzzzzzy{zyzzxxxyyxyyzyzzyzyyyzyxyxyyyyyzzzzyzzyyzyxxyyyxyzyy{xzyyyyzyyzyyxyzzyyyyyxyzyzyyyzzyyzxxyzxyzyyyyzzyyyxyxyyzyyy{zzzyyyyxzxyxyyyzzyxyyzxzxyxyyyyyyzxyyyyzyxyyyyyzzyzyxyxxyxxyyyzzzyzyxyzyxyxxyyyyyyyzxyxxxxyxyyyyzyzwyzyxyyxyzzzyyyzzxxyyyxyyyzyzzzzyxzzyxyzyyyyyzz{yyyzzzyyzzzzyz{zzyyyyyyyzzzzyzzzyyzyzxyyzyzyyyzzyyzxxyzyzzzzzyzzzyy{yzzy{zzzz{zzxzyyyyzyzzzzz{zzzy{yxxyyyzzzzzz{yy{zzyzyzz{zz{|{zyzyy{zyz{{zzzz{zyzxzyzzzzz{{z{{zzzxx{yyzz{z{{{zzzyz{yy{{zy{{{{{zyzy{yyyzzzzzzz{zzyzyyyzy{zzzz{zyyzyyyyzyzzzzzzzyyyyzyxyz{yzyyz{yyzxyxzyy{{zyzzyyyzxyxzzyz{zxyzzzyzxyxzxyyzyyzzzyzyyxzxyzyzzxyzyzyyxyyxxyyzzxzz{zyyxyyxxzzzyx{zyyyzyyyyxyyzxzyzzyyywxzxyyyyyyzyyzyyxyxyxzzyyyyyyxyyzyyyyyzzzzzzyyyzxxyxyyyyyyyzzyxzyyyyyxzyxyyzzxyyyyxyyzzyzyzzyyxyyxxxxzzyyy{z{yyyyyyzyzz{zyzyzzzzyxyyyyyzzy{zzyzzyxzzyzzzzzzzzyyzzzyyyyzzz{zyyzyzzyyyyzyzyzz{{yyyzyyyzyzzzy{zzzyzyzz{zzzz{{{yzyyyxzzyzzz{{zz{{zy{xzyzyz{zzzy{zzzzzzzzyz{zz{z{{yyyzyzyzzzzzz{{z{zzzzzzyzzyzz{{{zyzzzzyzzzzzz{{zzzzyzyzzzzzzz{{zzzzz{zy{{{zzz{{{zzyyzyzzzzzzzz{{{zyyyy{yzzz{{zzzzzyxyyyyyy{zzyyyyxxyxxyyzy{yxyzy{yyyxxyyyyzyyyzyyxzyxyzzzzzyyzzyzyyyyzyxzyzyyyzyzzxxxyyxyzzyyyy{yzyxyzzyxzyyzzzyyzxzyyxxzyyyzzyzxzxxxzxxyyyyyzzzyyxyxyyxzyyyzzyyyxyxxyyyzzyzzyzzyyxyyzyyyzyyzyzzyyxyyxyxyyzyyzzyyyyxyyyyyyzzyzzzzyyyyyyyzzyzzxzzyxzyyyzzyzyzyyz{yyyzyyyzzyy{yzyzyyzyyyyyyzzzzzz{yzxyzyyyyyzzy{z{yxyyzyxyz{zyxz{y{yxyxyyzyzzyyzy{yzzzyxzyyzzz{zz{yyzyzyzyzzyzzzzzyzyyzzxyz{{z{zzzzzy{xzzz{{zzzz{{zyzyzz{zy{zzz{|{{yyyyzyz{{zyz{zz{yzzyy{zyz|{zzz{zyzzzzzzz{z{{{zz{yzzzyyz{zz{z{zzyzyyyzzzyzz{{{{{{yyyzzyyyzzzzzz{zyzzyyzxz{zzzzyyxyxxyyyyyyzyxyy{xyyxyxyyyzzyzzzzyyxxyyxyyzzzzz{yxxyyzyx{yzyzyyyzzyxyyyyxzyzyzzyzyzyxyxyyyyyyzyzxzxyyyxxxxzzyz{zyyzyyxzyxyyyyyyzyyyyyxzxyzyyyyyyyyyyxxyxyyyyyzyzy{yyyxzxyyzyyzzzzyyxyyxyyy{yyyzzzyzxyxyxyxyyzyyyzzxzxzyyxyyyzzzzyzzxyzyyyzzyyyzz{xyzyxxyyzzyyyzy{yyyxyyyyyzzzyz{yzyxyzyzyyyzz{zy{yyyyyyxyzzyyzz{yyyxyyyzyyzzzzzy{zyyyzyyyzzzzyy{zyzzzyyzzzzy{z{{{zyzyyyyyz{zy{zzzyzyzzzyz{{{{zzzzyyzzyyyzzzzzz{{{{zyyyzzyy{zz{{{zyzyzzyzz{{zzz|zz{zzyyzzzz{zz{zyzzzzzzzzz{zzzzzzzzzyyyzyyz{zz{{z{zzyyyzyzyzzzy{z{zzzyyyyzzyzzy{xzxyyxxyxyyyyyzyzzyyyyyyywzyyyzz{zzyxxyyyyzzzzzyzyyyyyxyyxyyzyyyz{zyyyxyxzyzzyyzzzyzzyxxxyyyyyzzzxzxzyyyyyyxyyyzzyzyyxyyxyyzyzyzzyxyyyyyzxyyyyyzyzyyyyyxxxzyyyzyzyyyyxxzyxyyyzyzzyyyxyyxyyyyyyyyyy{zyxzyyzyyyyy{zzxyzxyzyyzzyzzyzzzyyyzyxyzzzzzzz{zxyyyxzyyzzzzzy{yyxyyyyyyz{yyz{yyxzyyxzyzzy{zzyyzyzzyyxzzzz{yy{zyxzzzzyzzzzyzzzzyyyyzxyzzzzz{{zzyzzyyyyyyy{{z{zzzyyyyzzzzz{z{|{zzyzyyyzyzzzyzz{zzyzzzyzzyzzz{zz{zzyzyyyzz{z{|z{{zz{{yyyz{{zzyz{z{zyzzyyz{{z{zzyz{yyzzzyyzzzzzzzzzzyyzyyzzzyz{{z{{zyyzzzyzzzzzz{yzyzzzyyyz{zzzyyxyyxyxyxyyzzyyzzyzyyyxzzxzzzzyyzyzyxxyyyyzyyzzzzzyzyxzzxyyzzzyyzzyzzxyxxxzyyzzzyzzxyxxyxyzyzyyzzyyywxxyyxzzzyyyzzxyzxxyyxyyyyzzzyxyzxyyyyyyzxyzzyzxyyxyyxyyyyzyzzzzxxxzyxyzyzyyzyyyzxxxzyyyzxyyyyyxyxzyyyyyzyzzyzyzyzxyyxyzxyyyzzyzxxyyyyzyyzzyzzyyyyzyxyzzzz{yyzxzyyxyyyyzzzyyy{yyzxyyyyyyyz{zz{zyzyxyyyzzyzyz{yyyzzyyzyyzyzzyzzyzyzy{zyzzz{z{zzyzzyy{zy{yzzzzz{zyyzyyyyyzz{z{zyyyzyzzyz{zzz{{zzyzzzyzzz|yzz{z{zyzyyz|{zy{yzz{z{zzzzyyzzzzzzzzz{zyzyzyzzy{{{{{{{zzyyzzyzyy{z{{{zzzyyyzzxzz{yzz{zzzzyzyyyyz{zzzzzzyzyyxzyzzyzzyzyxxyxxyyxxyyyzyyzyyzzxyyyyyyzzyzzxyyyyzyxzzyyzy{yyzyyyxxyzzyzyyzy{zyyxyzxyyyzyzz{yxyxyyxxyyyxzyzyzxyyzyyxyyzyyzyyyyxyyyyyyyyyyyyzxyyxyyyxyyzyyzyyxxxyyywyyyyxyyzyyyyzxxyyyyzzxzzyyyyxyyxyyyyyxzyyyyyxzxyyxyyyzzyyxxyyyyzyyzyyyyzzyyyyyxxxyzzyyzzzyyyyxxzyyzyyyy{{{xyyyyyzyyzyzyyzzzyzyxxyzzyzyzyzyyyyyxyyyzzzyzzyyyyyyyyzz{zzzzzzzyyzxzywyyz{zyzzyzyyyyzyyzz{yzy{zxyxzzyyy{{y{yzyzyyyzzzzyzzz{{{zyzzzz{yyzzzz{{z|zyyyyyzyy{{{y{{{zzz{yyyyzzy{{zzzyyzzyyzyz{zz{z{{zyyyzzyyzzzzzzzzzzyyyzxzzzyzy{zzzzyzyyyx{zzzzzzzyyyyyyxyzyzyyyzyyxyyyyxxyyyzzy{zyyyzxyyyzyzyyzyyyyyxyyyyzzzzyzzzzxyyyyyyzzyzzyzzzzyyyyzyyyzzz{y{xxzyyyyyzzzyxzyyyyzyzxyzzzzyzzyxyzxxxyxyyyyyyzzyyyyxxyyyyzzyxy{yzyyyxyyyzx{zzzzzyyyzyyyxyyyyyzzzzyzyzywxyyzzyzzyyyxxyxxyyzyzy{yzzzyyyzyyyzzzzzyyzyzyzyyxyzzyyy{zyyyxyyzzyzzyzzyyzzyyyyyyzzzyyzzzzyzyyxzyxzyzz{{yyyyyyzyzyz{zzyzzyyxyzxyyzyzyyzyzyyxyyzxyyy{{zzzyyzyzzzzzz{zyyz{{zzyyxzzzz{{z{zzz{zzzzyzyz{zzzy|{zyzzyzzzzzyzz{zz{yzz{zzyy{z{{{z{zyzzzzzzzzz{z{zz{zzzzyyzz{zzzz{zzzzyzyzy{z{zz{{{{yzyzyzy{yzyzzz{{yyyyzzyz{zz{{zzyzvzzyzyzzyyyzzzyyyyyyxyxyyyyzzzyyxyxxyyzzyyyyzyyyyxyyzyzyyzzzzyyyyyzxyyyyyzzyzzyyyyyxyxyyzzzyzzyyyxxyxyyyzxyzzzyyyxxyyyzzzyxzyyzxyyxzxyzyyyzxyyyyxyyxxxzyyyyyyyyyxyxyxyyyyxyyzyzyyxxyyxyzyyzyyyzyxxyxzxyyzzyzzzzzyyxxyyyyyyx{yzxxyyzzxyyzyz{zzyyxyyyyyxzzy{zzyz{yzyywzyzyzzz{zzyyyyzyyxxyzyzz{zyyyyzxxyyzzzzzzyzyyyyyyzzyzzzzzzyzzzyyzyzzzzzyyzyyyy{yyyyzzzzyzzyzzzyyzyzzyzyzz{yyyzyxzyzzzzzz{yzyxyzyzyzzz{zz{{zzzzyz{zy{{zz{zzzzyzyyxzz|z{zz|{{yyyzzxy{z|z{{{zzyyy{zyy{z{zzz|zzzyzzzyyzz{yxzz{zzyyyyzzzzzzzz{zzzzzzzyyzz{zzzzyyyyzyyyyzyzzz{yyxyyyyxyyzzzzz{yyyyxyxyyyyyyxzzyzyyxyyyxyyzzzyzzxzxzyyyyyzzzyyzzzzyyyxyxxyzyzz{yyyyyxyxyxyyzyyy{zyyzyyxxxxzzxyzzyzyxwxyyyzyyyyzzzyyyxyxyx{yyzzyzzzyzwyyyyyyzyzzzzyyzyxxxyyyyyyyzzyxyyyxxxyyyyzzxzzyyxyzyxyzyyz{yzyxyxyzzyx{yzyyzzyyxzxxyzxyzzzyyyzyyzyyyy{zzyyzzzxzyyyyyyzyzzzz{zyyzyyyzxyzzyyzzyyyyyzyyyyzyy{yzzzyyyxyyyzzzzz{yyyzzyyyyzzyzyzz{{zyyy{zyyzzzzz{{{{yyzzyyyyzzzzzzzyyzyzzyzzzzzzz{{zzzzyyyyzz{{zzzzzyzyyyz{y{{zzz{|zzzzyyyzz{zz{z{{{zzzzzyzzz{zzzz{zzyzzzyyzzy{z{{zzyzxyyyyzzzzzzzzyyyzzyzyzzzyzzz{yzzxyyyy{{zyzyyyyxyzxyxxyzyzzyzzxyyyyxxxxyyzyzz{zyywzyyxzyzyyzzzyyyyyxyxzyyzyzzzyyyxyxyyzyyyyzxzxyxxwyxxyyyyyzzzyyyxxxyxxyzxyzyyyyxyxyyyzxyzyyyzxxyyxxxxyyyyyyyzyxyyxxxxxyyxyyzzxxyywxxwyyyyxyzzyyxyywzxyyxyyzzyzxxxyxxwzyyyyzyzxxyxyyxyyyyyyzyzxxyxyyyyzzyyzzyzzyyxxyyyzzzzz{zyyxyyxxyzyyzyyy{zzyxzyyyxyzyzyzzzyyyyyyyyzzzzyzzzyyyzyyxzzz{yyzzzyyyxyyyxyyzzzzzzyyyyyzzyyzzzy{{{zyyyyxxyyzzyzzzyzzyyyyzyzzyzzz{zzyyyzyzzzzzzzzyzzxzyyzzzz{z{z{{zyy{yzyyyzzzz{zzzzzyyzyxyzzz{zzzz{yzzzyyzzzy{zzz|zzzyyyyzzzzzzzz{zzyzzyyyzzzzyyzzyzyzzyyyzzyyyzzyyyxyyxyxyyzxzyzyyyyyyxyyzzzzzyzzyzxzyzxyzzzyzz{yzyxzyyxyzzyzyyzzyzyyyyxxzzzzzzyzxyxyyyyxxyyyxzzyyxzyyxyyyyz{yyzyyzyxxyzxyyyzyzzyzyxzyxyxzyyyxzzyyyywxyxxxyyyyzyyyyyyxyxxyzyzzzzyyxyxxxxxyyyzyy{yyyxxyxxyyzyxyyyzyyyzx{yxyyyzzxzzyyyyzyyyyyyyyzyzyyyyxxyxy{zyzzyzyyyyyyyzyzzyzyzxyxyxyzzyyzyyyzzyyyyyzxxyy{zzyzzzyyyyyyyyyzzzzzyyyzyyzyyyzyyzzzyyyyyzzzzzzyz{zz{zzzyzyyzyyzzzz{{zzzxxyzyzzzzzz{{zzzzzyyzzyzzzzzz{zzyzzyyyy{z|zz{z{zzzy{yy{zzzz{{{{yyyzyxzyyzzz{{zzzyyyyyyz{z{{y{{yyyyzyyzzzzzzyz{zzyyyyyzzzz{|yzyyyyyyyzxyz{yyzyyxyxyyxxxxyzyyyzyyyyyyxyyyzyyyy{{yyyxxywyyyyyx{zyyyyyyyyyyzyzyyzzyzyxxxyxyyzzyyzyyxxyyyxyyzyyyz{zxxyyxyyxxyzzzyzyyyxxxyxyyzzyzyyzyyxxxyyxxyzyxyyyyxxyxyxyyzzyzzyzxyzywxxyyzyyxzyzyyxyxxyxyxyyxyx{yzxxwxxyyzyyyzyzyxyxyyxxyyzzzyyzyyyyzxyyyzyzzyzzzyyyyyxyyyzzyyzzzyyyxxyxzyyzyzzzzyyyzyyyyzyz{yzyyxzyyyyxzzzzyzzyyxyyyyzyyzz{yzzyzyzyyyyyzzzzz{yzy{zyxyyzzzyzzzy{yzzyzywzyzzzzz{zyyyzyzzzzzzzzy{{yyyyzzyzzzzzz{z{{xyzyzzyz|zz{z{{zzyyzyy{z{{zy{{{yyyyyyy{z{zzz{y{{yzyzyxyyzzzzz{{zzyzzzzzzzzyzz{{yzzyyzzxzzz{y{zzzy{yzzyzzy{yzyxzyzxxyxyyyyzyyyzzzyyyyyxxzzzyyyzzzxyxxzzyyyzyyyzyzxxzzyyyyzzzzzzyyxxyxxxwzzyyzzyzwxyxzzywxyxxyzzyyyxyyyxyyyyyzyzyyywyxxxyyyyyyzyyyyxxxyyyzyzyzyyyyzyzzyxyyyzyyzzyyyyxywxzyyxyzyzzyxyyyxxyyzyyxxyyyyyxyyzyzzyyzzyzyxzyxzxwyyyyzy{zyxyyzxyyyyzy{zzyyxyzzxyy|yyyyyzzyzyyyyyxxzyyxzzyzyzxyyyzyyzyzzzzxyzzyxyxyyzzyzzzzzxyyyyyz{yzzzz{zyzyyyyzzz{zzzy{yyyyyzyzz{z{yz{zzzyzyyzzzzzyyzzzzzyyzyyyz{z{zzz|zyxyzyzyz{zz|{{z{yzyzzyzz{z{zzzzzzy{zyzz{z{zy{zz{xyz{yyzyzzzz{zzyyzzzyyz{zzz{zy{yzyzzzyyy{zzzzzzzyyyyyyyyzyzzzzzzyyyxyxzyy{zyzyxyyyxxxyyyyyxyyzyyxxyyxyxyyzzyzzzyzxyyyxxzyyyzz{yyxzyyxyyyzyzyyyyyzxyyxyxzyyzyzzzyyxxyyyxyyyzyyzzyzxxxxxwyyyyyxyzxyyzyyzxyyxzyyzzzyyyyxxwyyzyyzyyzyxxyxxyxyyyyyyzxzxxxyxxzzzyyyyyyyxxxyyxxxyyyyzzyxyxyxyyxyyyyyzzxyxzyxxyxyyzyzzzyzyyyxyyyyzzzzyyzyyxyyyyzxzzyz{zxzyyxyyyyzzzy{{zxyzyzyyyzyyyzzyzzyyyyyyzyzzzzzzzzzyzyxyyy{zzy{z{zyyyyyyzyz{zzzzzxzzzzyzzzzz{zz{zyyyzyyyyzyzzz{{yzyyyyzzzy{{{zz{zzzzyyzyyxzzzzz{z{zyyyyyzyz{{zzz{|yzyzyzyz{{zy{{{yxzzzyyyyy{zy{zzzzzyzyyzz{z{{zz{yzzyzy{zzzzzzz{{yyzyxyyxzyzzz{zzyyyxxzyzyzzzzyyzwyxyxyzzzyzyyyyyyyxyxyxxyyxyzzz{xxyyyxyyyzyzzy{{yyzyyxyzzyzzyyxzzyyyxyxxyyzyzzzzzyxxyxzxzyyyy{yxzxyyyyyyyyzyyzyzzyyzyyxyzxyzzyyzyyxyyyyyyzzxzzyyzyxyyxyxyyzyzyzzyyxxyxxxxyyyzyzzyyyyzyxxyyyyyyyzyzyxxyxyxzyyzyzzyzyyyzyxzyzzyzz{zyyyyxyxyzyyyzzyyyyyyyyzzzzyyyzzzyyyyyyyyzzyzz{zzxyyzxzyyzxzzzzy{xzxyyxyyzyzzz{yzyyzyxyyyzyzyzzzzzyyyzzzyz{zzzzzyyzyzzzyzzzzzyz{yzzzyzyzz{{{{yz{zxzyzyyyyzyzyzz{zzyzyzyzyzz{{z{z{zzyyyzyz{{{zzz{zyzzzxyyzzy{{zy{zyzyyzzzyz{zzz{zzyzyzyzzyzyyz{y{yzyxyzyzy{z{z{|{{zyyyzyyzzz{z{{{yyzyyzzyzz|z{zyzzxwyxyyxyyzxzzzzyyxyxxyyzyzyzyyyyyyxxxyxxyzxzzyzyxyyyyyyzyzzyzyzyyywxyxxyzzyyzyzyyyxyyyxyyyyyyxzzyxyyyyxyyyzyxzyyxzyxyxxxyyzzxzzyxyyyyyyzyzyzx{yyyywyyyyy{zyyzyzxzzyxyyxyyyzyyzyyxyxxyyxxzyyzzyzzzywxyyxyyyzy{yzzxxyyyywyzzzzyzzyxyxyxyyzzzyyyzzyxyyyxzyyyyzzzzzyyxyzyyyzzzyyyzzzyyzyyxyyzzy{zyzzxzzyyyxyzzy{{{zyyyyyyyyzzzzy{zzyzyyzxzyzyz{zzzzyyxyzyzyyyyyz{{{zyyzyyzzz{{z{zzy{yyzzyzyyzzz{zz{zyy{yzyzyzyzzzzyzzzyyzzyzzzz{zzzzzyyzzyzzzz{zz{zzyzzyzy{zzz{{zy{yyzzzzyy{zzzz{{zyyyzzyyyyzzzzz{zzyyzyyyyzzyzzzzzyzzxyzzyzyyyyyzyyyxxzyxyy{yzyyyzyyxxywxyz{zzyzyzyyyyxwyyzyzzzzzyyxyyxyxxzyyzzyzzyzxxyyxyyyyyzyzzzxyyxzyxzzyxxyzyyxyxyzyyyzyzzzyyzyyxyyxyyyyyyzyzyxyxyxyyyzyyzyyyyzyxxyyyyyzxyzzyyyyxyxyxyyzyzyzyzyyxyxywyyxyzyyzzxxyyyxxxyyyxyzzyxyxzzxyyzzyyy{yyxyyyxxxzz{zyyz{yxzyyyyyyzzz{zzzyyzywxxyzzzyyzyzyyzyzyzzyzy{zxyzyyyyyyxzyzzzyzzyyyzyyxyyzzzyyzzzyyyyyyyyyyz{z{yzxyyyzyzzyzy{y{zzyyyzyxzyzzzz{{{yzyzzyzyzzyz{zzzzzyzzyzyzyz{zzz{{zxzzzyxzz{zz{z{{zzyyyyyzzz{zyz{{zyzyzzyzzzyzzzz{zzzyzyzzzyzzzzzzzyyz{zxxyzzzzz{zyyyzyyyyy{zzyzz{zyzyzxyyzzzyyyyyyyxyyxxxy{zyyzyzzxyyyxyyyzyzzyzzyyyxyyyxyyyzyyzzyxxyxyyxyxxyxxzzyyxyyxwxyyyzzyz{yyyxyyxwxzzzyyzyyzzxxxxxyyyxyyyyyyyyxyyyyyyzyyyyyxxxywyyxyzyyyzyyyxyxywxyyyyyzyzyzzyyyxyyxyyyzzzyyxyyyyxyzzyyyxyyyxxxxyxyzxzyzzyyyyzx{yyyyzzyzzzzyyyzxyyyyyzyyzzyxyyyxyyyyyzyy{zyyyzyyyxzyyzzzzyzyzzzxyzy{z{{{zyyyzyyyyyyzzyz{{yzyzzxzyzz{zzy{zz{yzzyyzy{zy{zz{zyzyyzzzyyzzzzz{zyyzyyyyyzzz{zzyzyyyyzyyzz{z{{{zzyzzzzzzyzy{{{yz{zyyyyzyyz{z{{zzzzyzzyyzz{z{{{yzz{yzyzzyyzyyzzz{zzyyyyyzzzyz{zzz{yyyzyzzyyzzxzz{{zzzyxyyzzzzzzzzzzyyyxxyyzz{zzzyyyyxyyxxyzzzyyzz{yyxxywyxzzzyzz{zzyyyxyyyzyyyyzzzyyyyzxyyzyzzyyzyyzyyyyyyyxyyzyz{yyzxyxyxyzyyyyyyzyyxyxyyyyzyxyzyyyyxxzxxzyyyzzyzxwyyxyyyyzyyzzyyyyyxyyyyyzzyzzzzzyyyyyxyzyyxyyzyyyyyxyyyyzyzyyyyyzxwxxyxxyyyzzzzyyxyyyyyyxzyzzyyxyzyzyxxy{zzzz{zyyyyxyyyyzzzyzzyyyyzyyxxyzzyzzzzyy{yyyzx{{{zyyy{zxyxyyzyyzyzzzyzyyzyyzzzy{yyyzzzyyzyzyzyzyzz{zzzyzyyyyzzzzyzyzzzzzyzyxyyzzyzzzzzzyzyzz{yzz|z{{{{yyzyz{{zy{z{{zzz{zzzzyzyz{{zz{zzzzzzzzzz{zz{{|zz{yyyzzyzzzz{zzzzzzzz{yyzzz{{zz{{zzzyyyzyzz{{{{{{zzyyyyyyy{zzz{zzyyyxzyzxzzzyzzxzyyyxxyxyyzzyxyyyxyyyxxyyyzyzz{zzyxyxyxxyyyyyyzzyyyyyzyyzyzyyxyzyyxyyyxzyzyyzzzyzyxyyyyxxyyyxyzzyzzyxxyxwyyyxyyyyzyxyyyyyyyyyyyyzyxxxyzxyyzyyzyyyxyyxxxxyyxyxzyyyyzzyyxxyyzyzyzyzzyzzyyyxyzzyyyzzyyyyxyyxxxyyyzyyyxyyxzxyyzzyzzzyzyxyzxyzyyyyyzy{yyyxzxxxyyzyyzzzyxyyxyxzzzyzyzzzyyyyyxyxzyy{zzzyyyyzyyyx{zzyyy{zyzy{yzyyyzzyyzzzyzyyyyyyzzy{y{yzzzzzyyzyz{y{zy{zyyyyzxyzz{zzzz{yzyzyzxyyzzyz{z{{zyzyyyzzy{z{zzz{{yz{yzzzz{zzz{z{zzzyzy{y{y{z{yzzzxzzzzyzz{zzzzz{zyyzzyyyyzzz{zz{zzzzzyzy{zyzz{{zyyyyyyyyzzyzzz{zzyzyyxzyyzzyzzyyyzxyyyyxyyzyyzyyyyxyyxyyzyyyzyzzyyyxzxyyyzyzxzzzyxzyxxxxyyzzzzzzxxzxyxywyyyyyzzzxyxxyyyyzyzyzyyzyyyxwxxxxyyyz{yyxyxxyyxxzzyyyyyyxxxyyxxyxzyxyzyzyzxzxzxxyzyyzzzyyxzyxxyyxyyzyxzzyxyzyywxyyzyyyyyyxxwyxyyyyzyxyyzyyyyxyxxyzzzzzyyzyxyyxyzyyyzzzyzzyzywyzyxzyzxyzzyxzyyyzyzyzzyz{zzyyyyyxyxyzzzzyyzyzyyyzzzyzzyzzzzyzyyyyy{zyzyzyyzyyyxyyzzyz{zyz{yyxxyyzzzzy{y{{zyyzyyyyyyzzz{yzzzyzzyyyy{zzz{{{{yyyzy{{zyzzzy|{zzzyzy{yzzzzzzz{z{yzyyzzzz{zzzzzzzyzzzyyy{{{zzz{z{yzxzzyzzzz{{zzzy{zzxyzzxzyzzzz{zyyyzyyyzzzy{zzzyyyzyyyxyy{y{{yyyzyyyxyxzzzxzyyzyyyyzxxyxyyzzzzzzyyxxyxxzyzz{zzzzx{xxyyyzzzzzzzzzyyyxyyxyyxyyzyyyyyyxxyxyzyzyzzzzyyyyzxxzyzxyzyzyyyzyyxyyyzzzyzzxyxyzyxyyyyxyyzyyyxyyxyzyyzxyzzyzyzyyyyyyzzyyx{yyxzyyyyyyzyyxzzzyyyxyyyyzyyyyy{zyzyzxzyxzzyzzzz{yyzyxyyzzzyyyyzzyyzyyxyyzzyzzzyyxyzyxyyzzzyyz{zzzyyyyyzzyzzyzzyyyyzyyyxyzzzzzy{zzyzyzzzz{zzz{zzzzzzzyyzzzzz{{{zzyyyzzyzy{{zzyzz{zyyy{zyyzzzzzyz{zyyyz{zz{{{z{{{zzzzyyzzy{zzy{{z{{zzyyzyy||{zz|{zzyzzzzz{{{z{zzz{zyyzzyzzzzzzz{zzzzyzzzzzz{zz{{z{zyzzyyyzz{zzz{z{zyzyyzyzz{zzzzzzzzzzyxyyzyzzzzyzyyxyxxyxyzyzyzzzzzxxyyxyz{xyyz{{zyyxxzzxyzyyzzzzyyyyzyyyyzxzxzzzzyyxyyxyzyzxyyzyxxzyxyyyyyxzyyzzyzyyxxxxyzyzyzyyzyzyyyyyzzyzzyzyyxxzyxyyzxzyyyzyxxxyyyyyyyyyzyyyyyxxyyyxyyyzyyyyxyxxxyyyzzyzxzzzyzxyyyxyyzzyyzzyyyyyzyyxyzyzyzyzzyyyyyzyyy{yzyy{yyzyyxyzz{{zzzy{yyyzyyyyzzz{yyzyzyyzxyxyzzzzyzzzzyyyzyzyzzzyzzzzzyyyzyyyyzzyzyzzzyzzyzzzzyz{zzzzzxyyyyzx{zzzz{z{zyyyzyyzz{zz{z{{zyzyzzz{z{zzz{zzzzzyzzzyzzz{zzz{{yzzzzyy{{{z{{{z{{zzzyyzzz{zy{zzzy{yzzyyy{z{yzz{{yzzzz{y{yz{zz{zzyzyzxzzzzyyzz{z{yzzyzzxzyz{zzzzyzzzyxzyzzyzzyyzyyxyxyxyyyyzyxyzyyxyyxxyyzzyz{zzxyxyxxyxyyyyyyzyxxyyzxxxzzyzxyyzyyyxxxyxzyyyyzyzyxyxyxxxxzyyyyzyyyyxxxyyyyyyyzzxxzyxxxxyzyyyyyxzyyyxyyxxzzyxyyyyyyxyyyxxzzyyyyzyy{xyyyxxxyzzyxzyyyyxxxyxyyyyyyzxxyyxxyyxwzxyzyzzyyxyxzxyyzxyzzzzyyzxzyyyyzzyyyyzyyzxyyyyzyyyyzzyxyzxyyyxyyyzzz{{yxyyzxyxyzyzzzzxyyxxxzyyyyzzyzzzyyzyyyxxzzzzyzzzzyyyyyyyyzyzzzz{zyyyyyxyyzzy{z{zzzyyyxyzz{zz{{zyyyyzzyyzz{zzz{{yyzyzyzyz{zz{z{{z|zyzzzzzz{zzzzzzyyzzyyyzz{zz{{{yzyyzzxyzzy{{zz{z{zyzyyzzy{zzzzz{zyzyyyzzyzyzz{zzyyyyyyzyyzz|yzyyzyyxxyxyzzzyzyzyyyyyyxyzyzzzyzzyzyyyxyzyxzzyzyzzzzyyyzyyyy{zzyyzzxyyxxyxyzzyxzzyzyzyxxyxyyzzyzyyyzyyyyyxyzyyyyyyzyyxyyyxyzzyzyyzzyzywzxyyyyzyzzzyyyxyxxyyyyyzzyyyyyyxyyxyyyzzzzxzyyyyzxxxyzyzy{zxyxyyyyyyzyyyyyzyyxyxyzyyyyyy{zzyxyxzyyyyz{zyy{yxyyyxyyyzzzzzzzzyzyyyyzyyzyyzzzyyyxyyyyyzzzyzzzzyyzzyxzxzzyzz{zzzzzyyyxyzyyzxy{yzzyzyyxzy{yyyzzzzyyyzz{yyzz{zzzyyyzzyzzzz{yzy{{zzyzzzzzz{z{{zz{yzyyyyzyzz{zzzz|{zzyyyyyzyzzzz{zzzyyyzzzzz{zzzz{|zzzzyzyyzzzz{zzzzzyy{yyzzyzzz{{{zyzyzyyzzyzz{zzzzzzyyzyyzzz{y{zyzzzzyyzyyzzzyy{zzyzyyyxyyz{zyyyzyxyxxyyxxzzyyyzyyxyyzxyyyyzyzzxzzzyyxyyzyyyzzzyzyxyyyyyyxyzyy{zyxyxxxxyxyzyxyyyzywyyxxzxyyyyxyzzxyyxyxyyyxyxyyyzyxxxxzyyyyyyyzzyyyyyxxyxyxzyxzyyyyxyxyxxyyyxyyzyyxxyxxyyyyyzzyzyxxyyxxwxxzyzyyyzyyxyyxwxxyyyxzzywyyyyyyxxzzyyyzzyyxzzxyyyzzyzzzyyyyyyyzzzyzzzyzyyyyyxxyyyzyyzzzzyyyyyyyyy{zyzzyyyzyyzyzzzzyzzyyyyyxyzxyzz{yzyyyzzxzyyyyzyzz{zzyzyyzyyyzyyy{zyzy{yyyyzxyyyz{yz{|zzyyyzzzyzz{z{{z{{{yzy{zyzzzzz{{z{zyzz{yzz{z{z{{z{yyzyyyyzzzy{zzzzzyzyyzxy{zzz{z{zzyzyyyzzyzzz{y{yzzy{zzxyzyzzz{{zyzyyyzzyzzyyz{zzyzyyyxyyyzzyyyyyyzxxyyxzzyzyxzzyxxyyyxyyyyyyyzyyyyyyyyzzyzxyyzzzyyyxxyxyzyyyyzzxzyyxyyxyyzyyzxyyyyxzyyxyyyyyyyzxyyyyyyxyzzyyzzyxxxyyxyxzyxyyzyyxxxxyxyyyzy{yzyzxyyyyyxxxyyxyzzyyxyyyyxwzzzyyx{yyxyyxyyxxyyyyzzyyxxxxxyxyzxyyzzzyyzxyyywzyyxyyzzyyyyzyyxxyzyyyzzzyyxyxzyyyzy{zzzzzyzxxzyyyzzyzzzzyyyyxzyyyyyyzzzyyyxyyyyyyzyyyzzyyxzyzyyyzzyyzzzyyyyzzxzzzzzyzzyyyyyyyyyzzyyzzzzzzzzyyyyzzz{zyyzyxzyzyyyz{zzzzz{zzyyzzzzzzz{zz{zzyyyy{yzy|{{{z{zyyyyzzzy{zz{zzzzzyzxyzzyyzzzzz{zzzyy{zyzzzy{{yzz{yzyzyyzzyy{zyz{zzyyyyzyy{z{zzzzzzxzyyyyyzyzzzyyyzyyxyxyzzyzyyzzxyyzyxyyyzzzzzzzzyxxxyyzzyzyzz{{yyyyyyyyyyxyyyyzyxyyyxyyyzyzzy{yyzyyxxyxyzyyyyyyyxyyyxxyywzzyyzyyyzxxyyxyyzyyy{yyyyyzyyyyzyyyyyyyxyyyyxzyzyzyyyyzxyyyyyyyzyzzyzzyyyyzyyyyyyyzzzzyyyyyyyxyzzxyyzyxxyyxyyyyzzzzyzyzyyyyxyx{zzzzyzzzzyyyyxzy{zzzzzzyxyyyyyyzzyyzz{yyzzyyyyxyyzzzzzyyyzzyyzzzz{zyy{zzyzzzzyzz{zzz{zzzzzyzyzyz{zzzzzyzyzyzyzyy{zzzz{zzyyzzyzzzzzz{{zz{zzyzzzz|zzzzzz{zzzzyzzzzzz{{{yyzyyyyzzy{{{{{{|z{yzzzzyzz{z{y{z|yzzz{yyzz{{zzzz{{zzzzzzyz{{{zzz{zyyyzzzz{z{{{zz{zzzyyzyyz{{zz{{zyyzzwyzyzzz{zzyyyyxxxywxzzyyyyzyyyxyyyyxxzyyyzzyyzzyyyzyzyyzzxzzzxyyyyyyxzyzyyzyyyxxxxyxyyyyyzyyxxyxxyyyyzxzxyzyzzyyyzxyyzyyyyyyxxyxxyxzyyzyyzyyyyxyxxyxyyzyyzyyyyxyyyyyzyxyzyzxyxxyxyyyyzyzyyzzzxyyxxxwwzyzzyyyxyyxzyyyyzyyzyzzyxzyyzyxyzyyzzzyzyzzyyyyyyzyyzzzxyyzyxxxyzzzyzz{zyyzxxyyyz{yzzzzyyyzyxzyz{yzyzyzyyyxzyyyzzyyyzzyzyyzzyzyyzzzyzy{yzyyyxyzzzz{zz{zyyyxzyyyzzyzzz{{yyz{yzyzzy{{{{{zyyyyyyzyzz{z{z{{zyzyyzzzz{yzzzz{zyzzyyzzz{{zzzzzyzzzzzzyzzzzzzz|yzzwyyzzzzzzzz{{zyzyzyyzz{zzzz{|zzzyyzzzyzzzz{zzzzyyyyyzz{yzzy{zzz{yyyyyzzzyzyyyyzyxxyywyyxzxzzyxyyyxxxyyyyyyzzyxxyxyxzyyzyyzyzzxyxyzxyyxyzyyzzyyyyxyxywyyzzxzyzyxyxxxyxyzyyyzzyzxyyxxxxyyyyxzyxyyxxxxxxxyyzyyyzyxyxyyxxxyyyyzzyxxyxyxxyxxzyzz{zyxyxyyyxyyyyzzyyyyyyxxyxxzzyyzzyyyxwyxxyxzyxyyzyxyzyyxxxyyzyyzzyzyxyyxzyyzyyyzzzyyyyyxyy{z{zyzyzyyxyyxyyyyyxyzzzyyyyzxzzyzyzyzxyzxyyxzzx{zzzzy{yyyzyzyyzy{zz{zzyzzyyzyyxyzzzyzy{xzzyyzzyzyzzz{{{zzyyyyyx{zzz{zzzzyyyyyyy{zyzz{{{yzyyyzzyzzyyzzy{{zyyyzzyz{zzz{zzzzy{zyzzyyzzz{{{zxyzzyyyzzz{zzz{zyyyyyyzz{yz{zz{yyyxyyyzz{zzy|zzzyyzzzyyz{zzyy{zyzyyzyyyyyzyxzyzxyyyyyxxyyyyzyzzxyxyyxxxzyzyzyzzyxwyyyyxzyzzyyzyyxyxxxxxyzzyyyyyyyxxwxyyzyyzyyyzyyyyyxxyxyyyxzzxyyyyyyyxyyyzyyyzxyyyxxxyxxyzyyzzyxxxyxxyxxyzyyzxxxyyyzxxxyzyzzzyxyyzxxxxzyxyzyzyyxyyyxyyzyyzyyzzzyyxxxyyxyxyyzzzxyyyyyyyyzyyzz{zzyyzyzxzyzzyyzzzyyxyyzzyyzzyzyz{zxyxyxxzyxzzzyyyyyyxzxyyz{zzz{yzyyyyyzyxyzzzzzzzyyyyxyyzyzyy{yzyyxzyyyyzzz{zyzzzyz{zzyyxyzzzy{zzyzyxyyxyzyzz{yzyzyyyzyyzzyyz{z{zyzyyzzyyz{zzzzzz{xyzyzzzy{y{z{{zzxzzyzyyzzz{{zzzzyzyyzzyxzyzzz|zzyzyzyyz{yzz{zz{zzyzyxyyzzzyy{zzzyyyyyyxz{yzzzzzyyyyzyyyzzyzzzyzyxyxyzyxxzxyzzyzzyzxyyxyyyyxzyzzyyxyxyyxyzyzyzzzzyyxxyxyyyzzxyzyyyyxxxyyyyyyyzyzyyyxyyxxzyyyz{yyyyyxyyxyyyzyzyyyxyxxywxyyyzzzzzyyyxzywxyxzyyyzyyyxxyyxxyyxyxzzzyyxyxwxxyxyzyzzyyxwyyzxyxxyyyyyxyyxyxyyyxxyyyyzzzzyyyyyzyyzyyzy{zyyxyyxyxzyyyzzzzyyyyyxyzzyzyzyzyzyyyxxzyzzzz{zyz{zzyyyzxyzzyyzyzyzzxzyxyzzzzyz{yzzx{yzyyzzzxzzzyyzxyyzxyzyzzzyzzyyzyyyzzzzyzz{{zyzyzxyyy{zzy{zzz{z{yzzzz{{zyz{{yzzzzzzyzy{yzyzzzzyzyyzzyyzz{z{z{yyzzzyzzzzz|yzz|zyzzyyyzzyzyzzz{zzzzzyyzzzyzz{{zyzyzzyyyzzyzz{{zzzzyyxzyz{zzzzz{{yyxyyyyyzzzzzyyzxxxyxyxwzxzyzzyzyxyywwzyzyzyyyzyyxxxyxyyyyzyzyzyyyxxyxyyy{zxyyzyzyyxyyxzyyyzyyzxxyyyyyxyyyyyxzyyxyyxxxyyyyxxzzzxyyyyyzxzyyyyyyzyxxxxyxxyyzyyyyzzzyyxyxxyyyyyxyzzxxyxxyxyyy{yyyzzyxxxwyyyyyyyyyyyyzxyyyx{zyyzzzyyyzyzzyyyyyzzxzzzyyyxwyyyzyzz{zyxyzzxyxyzzyzzzyzxyyxxyyyzyzzyyz{zxyxyxyyzyzzzzyzyyyyxyyyyzzyzyzyyxzyyzzzzyyzyzzzzyzyzzyyyz{zzz{{zzzzzyzyzzy{zz{{zxzyyzyyz{{z{zzz{yyyyzyzz{{z{zz{zzzyyyzzzzyyzzz{zyyyy{{zyzz{y{{zzzyzzyzyz{zzz{{zzzzzyy{zz{z{zy{zz{yzzzzzyzz{yzzzzzyzzyzzyzy{yyz{y{yzyyyyzzzzzz{z{zzyzyzyzyzyzzyyxxxwwxxxyzzyyyz{xyxyyyyxyyxyyyyzyxxxxyyyyyyyyzyzyzxxxxwxyzzzyyyzzxzxxxyxyyyyzzzyyzyyyyxxyzyyzzyzyxyyyyyxxyyyzzyyyyyyyxxzyxxyyyyyyyxxyyxxyyyzyyzxxxyyyzxyyy{yzzzyyyyyxyxxyyxyyxzyyxyxxxyxxyyxyzyzyyxxwxxyyyzyyyzyyxxxxxxyzzyyyyzyyyyyxxxxyzzyyyz{zyyyyzzyyyyzzzzyxyyyyxyyyzzyzzyzxyxyyxzxyyzzyzyyzyyxzyyxyzzyzzzzyyyzyyyyzzzzyyzzyyzyzxzyzyz{zzzyyyxyyyzyzyz{y{z{zzyzyyyzzzzyz{zzzzyyyzyyyzyyz{{zzyyzyzzzz{z{{zz{|yzzyyyz{{yzz{{zyyzzyzyy{zz{{zzzzzyz{yzzzzyzzy{zzyyyyyyy{zy{zzyzzzzyyyxyzz{zzzzzzyyyyyyzyzzzxzzzzxzxyyyxzyyz{yzyzzyyyyxyzyzzyyzzyywxzyyyyyzz{zyzzyyxxxyyzyyyz{yyzyyyyyyzzxyyyxzzyyyywyxyyyzyyzy{xyyxyyxxyyyxyyzyzyyyyyxyzzyxyzzzyyyyxxyxzyyzyyyyxyyxzxyyzzzyyzzyyyxxyyyyzzyy{zzyyyzyxyyyyzzzyy{zyyyzyyyyxzyzyzyzyzxxyx{yyzyyyzyzyyyyyyxxyyyyyzzyzzxyzxyyzyzyzyy{yzyyxyyyzzzxz{{zyyyyyzyxyyyxzzzzyyyyyy{xzz{zyzzzyxyyyyyyzyzzyz{zyyzyyxyyzzzyyyzyzyzyyyxyzzz{{zzzyzyzzyzyzzyz{z{{zzzyzzxy{zz{{{z{zyyyyzzyzzzzyz{{zyzyzz{zz{zz{{{{zyzzyzyzz{|zz{{zyyz{zzyy{yz{z{{{{zzzzyyzzzzx{z{{zyzzzzyy{zzz{{z{zyyyzyyyzzyzyz{zzzyzzzzyzzyzyzzyzy{zyyyyzzyzzzzyyyyyyxyxyzyzyyy{yxyyyxxyzyyzzzz{zzzyyyyyyyzzyzzzyxxyzxxxxzyzyyzzyxyyxyyxzzyyzzzzyyyyyxyxzzyyyyzzyyzxyxxyyzzzyzzyzyyyxyyzyyyyxzyyxyxyyyyyyyyyzzzzyyyyxyyzzz{yzyyxyyyyxxyxyyzyyzzyyxyyxyyxyyzyyyyyxyyxzzxyxyyyyzyzyyyyzyxxzyzyyyzyyyyxyxyyyyzyzzzyzyyyyyyyzyyzzz{zyyzzyyxxzyzzzzzyyyyyyyxyyzzzzzzzzyyyyyyxzyzzyyz{yxzzyyyzz{zyyzzzzyyyyzyzyzyzzzzzyyzxzyzyzyzzzzz{zyyyyzyzz{y{zzzzzzyzyyzyzz{y{{zzzyyzyz{{yz{y{{zyzzxyyyzyz{{zz{z{zzzzzyzzz{zzzzzzzyyzzyyzyzzzzz{zzzzzyzyyz{z{zzzz{yzyzzzyzzy{z{zz{zzzzyyyzyyzyzzzyzzxyyxzyzzzzyyyxyxxyxzyzzzyzyzzyyzyyyxyyzyzyy{zzyyxxyyxyyzxz{zzzyyyyyyxyyyyyzzzyxxxxyyyxyzyyyxyzxyxyyyxzzxyzyzzzyyxzxxyyzzzyz{y{yyyyxxwzxyyyyyyyxwyyyyxyyxzyyyyxyxxxywyxyzyyyzyxyxxyyxyyyxyyzyzxyyyyxyyyxyyzyxyyyyxxxyyyyxyzzyyyyyxyzwxyxyyzzyzzyyxyxzxyyyyyy{zyyyyxxyxyyyyz{yzxyyyyxyyyzyzyzyzyxyyzxyyzzzxyzyzzyxzyyyxyyzzyy{yzyyyzyxyzzzyzzzyzyxyyyyyzz{zzzzyyyyxyz{yzz{zzz{{zyzyyyyyyzzzzy{yzyyzyz{yz{zzzzyzzyzzxzyzzzzzzzzzzyz{zyzyzzzyzz{zzyzyyzzzzzzzzz{z{yzzzyzxyzy{z{zzz{zyzyzzzzz{zz{{zyzyyyxzyzyzy{{yzyyzyyyyxzzyz{zyzyzyxxyyzzzyyyyzxyxyxyywyyyyyyyzxyxyyyxxyzyyyyy{yyyxyyxyzzzyyzzzxxyyyxzyyy{{xzzzyxyxyxxwyyzzxyzyxxzyyyxxyyyxzyzyyxyxyyyyzyyyyxyzyyyxyyxxyyyyyyyyxxxxxyyyyyzyyxyyyxxyyxxxxzyzyzzyyyyxxxyxyxyyzyyzyxyyyyxwyyxyzzyyyyxxyxxyyyyzyzyzyxyxyyxyyzyyyyy{yxxxyyyxyyzyyyzz{yyyzxyyzyyyy{zzyxxyyxyyyzzxzzyyyyyyyxyxzzxzzzzzyxyywzyxyzyzzyzzzyzzyzxyyzzzyyzzxyyzyzzyzyzz{zzyyyyxzyyzz{z{yzzz{yyyyyyyyzzz{{zzzyyzzyyz{zzzyzz{yyzzzzzzzzzzy{y{{zyyyzyzy{zzzz{{zyzzyyzyzz{zyzzyzyzzyy{yzzzyzy{zzyyzzyzzz{zzzyzzzzyyzzyyyzyzzzz{zzyyyyyyy{zy{yyzyyzyyyxzzzzxzzyyyxzyyyxxxyzyzzz{yyxyyyyxzxyyzzyzzyyxyzxyyxyzzyzz{xxyxyyxyyyzxyzyyyxxyxyxyzyyyzzzyyyxxxyxyyyyxzzyyyxyxyxxxyyyyzyyyyyxyyyxyyzyxyyywyyxxzyxxyxyyyyyyyxxxxyxyyzyyyyyyxxxxyxxxzxyxyyzyyyxyyyxyxyxyzzzyyxxyxzxxyxzyyyyxxyyxyxwyyyyyyyzyyyyyyxyyyxyzyzzyyzyyyyyyzzyzzyyyyxzxyxyzyzzyyzzzyzxzxyyyzzyyzzyzyzxxyyyzzyzyzyyyyyyyzzyyzyyyzyzzyzxyyyzyzz{zy{zxyyyxzyyzzzzyzz{zyzyzyyyyzzzyyzzzyyzzyzyzzyzzz{zyyzyyy{yz{zz{zz{zyxzyyyzyzy{zzz{{yyzyzzzyyzyzzzzzyzyzyzzzzzz{z{zzyyyyyyzz{zzy{{{zzyxyzzyzzyzzzzzzzxzzyzxyzyyz{zzyxzyyyxyzzyzzzyyyzyzyyyyyzxyzyzzyzyxyxxyyzzyyzy{yyyyyxxxyyzyzzyxzyyyxxxyzyzyyyyyyyyxyxzxzyzyyyyyzxxyxyyyyyxyyy{zyyxxxxxzyyyzyzyyxxyxyyywyzzyyyyyxyxwxxxyyxyyzzyyzyyyyxxzzyzyzyyyyyyyxxyxxyyxzyyzxyyyyxxxyzyyyyzzyyyzxxyyyyyzzzyyyxxywyyxyzzyzyzyyyyyxyyyxzyyyzzzyyzxyxyyyy{yyyzyyyyyyxzxzyyyzyyzyxyxyyzxyzzyyzzzyyzyyyyyzzzzzyzyzyyyxyyyzzyzzzzyzzxyzyyyzyz{zzzzyzyyyyzz{zy{yzzzyyyyyyxy{{zzzzzzzyyzzyxyz{yzzzzzyz{zzzzzyzyzz{z{zyyzyzyzyzzz{z{z{zzzyzyyy{zzz{zzzzyzzzxzzzyzzz{{zyzyyyyzyzzy{{zzzzyyzxyy{zy{zzz{zzyyyyxxzyyyzzzyyxyyyzyyyz{yzzzzyyxxyxyxyyzyyxyyzxyxyyyyzyyyyzz{yyyxyyyyzyyzzyzzzyzyyxxy{yzzzyzyyyyxxyyxyyyyyyyzyyyyzyzxyzyyyzzzyzyyxxyxyyzyyyyzzxzxyyyyzzxyzyyzyyxxyyxyxzyyyzzzxyyxyywzyyzzzyyyzxyyyyxxxyyyyzzyyxyxxxyxyyzyxyxzyyxyyxyyxzyyyzyzzxyzzxyyyyzzyyzzzyyyyxzyzyz{zzyzxxyyyyyyyxzy{zyyyyzxxyxyyy{yzzzzyyzyxyyxyyzyyzzzyxyxyyxxyzyyzz{zyyyyyyyzyzzyy{zzzyyzyyyyzxz{zzzzyzzyzyzyz{yzzyz{yyyyyzyx{z{{zzzzzyyyyyyy{zzzz{{{yyzzz{{zyzzz{zzy{yyyyyyzz{y{{z{zzyyzzyzyy{zzz{|{{zyyyyyyzzz{zzz{zyzyyyyyyzzzzyzzzzyyxyyzzzzyzz{zzzyyzyyyzzzzxzzzzzzyzyyzyzzzyyzzzyyyyyyxz{yyzzzzyyyzyyyxyyzz{zzzyyyyyxyyzzzyzzyzyyyzxyyyzzzzyzzzzzxyxyxyzzzzyzyzxxzyxyyxx{zyyzyyyyyyxxxyxyzyyyyzxyxyyxyyyzyyyzyzyyyyyyyyyyyzxzzzyyyzyyxyyyzzzzxzxyyywyxyyz{zyyzzyxyyxyzxxyyxyy{yyyyxyxyzyyyyyyzzyyzyyxyyzyyyzzzzyzyzzxyyyzyyzyzyzyyyyyyyzyyzyzz{yyzyxyyyzz{zyz{zyyyxyyyxyyzzzz{zzzzyzyzyyy{zzz{zzzyyyyyzzy{zzzzyzyzyyyyzyzzyzz{zyzyy{yzz{z{{zz{zzzyyzyyzz{{zz{z{zxzzzzxzz{zzzzzz{yyzyyzzy{z{{{{{zx{zyzzyz{{zz{{{zzyzzzzzzz{z{{zzzzzzzxyz{zzz{{z{zzzyzzyzzz{|{{{{yzzyzzyyyzzzzzzzz{zyyzzyzyzzzz{yyyzyyzyyyzzzy